docker安装Redis:docker离线安装Redis、docker在线安装Redis、Redis镜像下载、Redis配置、Redis命令

一、镜像下载

1、在线下载

在一台能连外网的linux上执行docker镜像拉取命令

docker pull redis:7.4.0

2、离线包下载

两种方式:

方式一:

-)在一台能连外网的linux上安装docker执行第一步的命令下载镜像

-)导出

# 导出镜像到本地当前目录
docker save -o redis-7.4.0.tar redis:7.4.0

方式二:

-)Window桌面程序:Docker Desktop

-)下载镜像

-)安装镜像导出插件(说明过程就复用了之前mysql的图)

-)将镜像文件保存到window本地(图略)

3、Community Edition | Docs

Install Redis on Linux | Docs

官方的下载地址,k8s环境用不上,因为官方没有发布镜像(自行打镜像的除外)

二、安装

1、在线安装

见离线安装(只比离线安装少一步导入动作)

2、离线安装

-)导入镜像

docker load -i redis-7.4.0.tar

-)查看镜像

[docker@GZ***-PM153160 ~]$ docker images
REPOSITORY                                 TAG       IMAGE ID       CREATED        SIZE
harbor.ta.com:30089/library/redis          7.4.0     dae83f665c92   6 months ago   117MB

-)创建映射目录

创建mysql配置文件目录、数据文件目录,并修改目录权限

sudo mkdir -p /opt/redis/docker-redis/conf
sudo mkdir -p /data1/redis/docker-redis/data
sudo mkdir -p /data1/redis/docker-redis/log
sudo chown -R docker.docker /opt/redis
# 作者data1目录下全是docker用户程序数据,所以没有指定子目录
sudo chown -R docker.docker /data1
# sudo chown -R docker.docker /data1/redis

-)启动容器

docker run \--name smet-redis \--privileged=true \-p 6380:6379 \-v /etc/redis/redis.conf:/etc/redis/redis.conf \-v /app/data/redis_data:/data \-d harbor.ta.com:30089/library/redis:7.4.0 redis-server /etc/redis/redis.conf \--requirepass MFxsHusd******

这个命令做了以下几件事:

  • --name smet-redis:给容器命名为smet-redis

  • -d:让容器在后台运行。

  • -p 6380:6379:将容器的6379端口映射到宿主机的6380端口,这是Redis的服务端口。

  • -v 映射数据文件目录和日志文件目录,左边的是外部目录,右边的是容器目录

  •  --privileged=true    开启鉴权

  •  --requirepass MFxsHusd******   指定密码

-)查看容器

[docker@GZ***-PM153160 ~]$ docker ps 
CONTAINER ID   IMAGE                                     COMMAND                  CREATED             STATUS             PORTS                                                                                                                                             NAMES
db867a1bae9a   harbor.ta.com:30089/library/redis:7.4.0   "docker-entrypoint.s…"   20 minutes ago      Up 20 minutes      0.0.0.0:6380->6379/tcp, [::]:6380->6379/tcp                                                                                                       smet-redis

-)从容器内部拷贝配置文件

[docker@GZ***-PM153160 ~]$ docker cp db867a1bae9a:/etc/redis/redis.conf /opt/redis/docker-redis/conf/redis.conf 
Successfully copied 1.54kB to /opt/redis/docker-redis/conf/redis.conf
[docker@GZ***-PM153160 ~]$ 

-)调整其他配置(可选)

vi /opt/redis/docker-redis/conf/redis.conf

按需修改后,删除原容器,添加配置文件映射参数后重新创建容器

docker run \--name smet-redis \--privileged=true \-p 6380:6379 \-v /app/data/redis_data:/data \-d harbor.ta.com:30089/library/redis:7.4.0 redis-server \--requirepass MFxsHusdxwFv6cqQ

-)重启容器

[docker@GZ***-PM153160 ~]$ docker restart db867a1bae9a
db867a1bae9a

三、使用/基本操作

Redis的基本命令包括操作数据库、键操作、字符串操作等,这些命令在Redis的使用中非常基础且重要。

-)进入容器

[docker@GZ***-PM153160 ~]$ docker exec -it db867a1bae9a /bin/bash
root@db867a1bae9a:/data# 

-)操作数据库相关命令

  • 登录Redis客户端‌:使用redis-cli命令连接到Redis服务器。
  • 校验密码‌:如果Redis配置了密码,需要使用auth命令进行验证。
  • 选择数据库‌:Redis默认有16个数据库,可以使用select命令切换数据库。
  • 清空数据库‌:使用flushall命令可以清空所有数据库的键值信息。

-)键相关操作命令‌

  • 查看所有键‌:使用keys *命令可以查看所有键,但不建议在生产环境中使用,因为会对性能产生影响。
  • 删除键‌:使用del命令删除一个或多个键。
  • 判断键是否存在‌:使用exists命令检查键是否存在。
  • 判断键值类型‌:使用type命令查看键值的类型。
  • 设置键的过期时间‌:使用expire命令为键设置过期时间。
  • 重命名键‌:使用rename命令重命名键,如果新名称已存在,则会覆盖。
  • 仅在重命名键不存在时成功‌:使用renamenx命令仅在目标键不存在时重命名成功

-)字符串操作命令

  • 添加键值对‌:使用set命令添加键值对,value可以是字符串或数字。
  • 获取指定键的值‌:使用get命令获取键的值。
  • 获取值长度‌:使用strlen命令获取字符串的长度。
  • 在字符串结尾追加内容‌:使用append命令在字符串结尾追加内容。
  • 自增和自减操作‌:使用incrdecrincrbydecrbyincrbyfloat命令对整数或浮点数进行增减操作。

-)其他常用命令

  • 查看符合模板的所有键‌:使用keys命令,但需要注意其对性能的影响。
  • 判断键是否存在‌:使用exists命令。
  • 为键设置过期时间‌:使用expire命令。
  • 查看键的剩余过期时间‌:使用ttl命令。
  • 返回键所存储的值的类型‌:使用type命令。

这些基本命令涵盖了Redis的主要功能,帮助用户高效地管理和操作数据。

遇到的问题总结

1、将镜像推到内网镜像仓库时报错

[zhao****@GZ***-PM153160 ~]$ docker push 10.130.***.106:30089/library/zookeeper:3.9.3
The push refers to repository [10.130.153.***:30089/library/zookeeper]
Get "https://10.130.153.***:30089/v2/": x509: cannot validate certificate for 10.130.153.*** because it doesn't contain any IP SANs

 解决:换成域名

[zhao***@GZ***-PM153160 ~]$ docker login harbor.***.com:30089
Username: admin
Password: 
WARNING! Your password will be stored unencrypted in /home/zhaozheng/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credential-storesLogin Succeeded

可能会用到的其他命令

-)创建卷

docker volume create redis_data

-)验证卷

docker volume ls

-)使用卷

docker run --name some-redis -v redis_data:/data -d redis:tag

 这种docker卷作者没有用过(实际数据存储位置是docker默认数据目录,默认数据目录可以在docker配置文件中配置修改),有兴趣的可自行尝试~

如果喜欢我的文章,请帮我点赞,谢谢~  

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/9459.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

再见了流氓软件~~

聊一聊 最近一直在测试软件,需要装各种软件和工具配合测试,导致现在电脑都快装满了,需要把不用的软件卸载。电脑自带的卸载只能一个一个卸载,不但麻烦还卸载不干净。 相信很多人也有这方面的需要,电脑装了很多软件&a…

PostgreSQL 数据备份与恢复:掌握 pg_dump 和 pg_restore 的最佳实践

title: PostgreSQL 数据备份与恢复:掌握 pg_dump 和 pg_restore 的最佳实践 date: 2025/1/28 updated: 2025/1/28 author: cmdragon excerpt: 在数据库管理中,备份与恢复是确保数据安全和业务连续性的关键措施。PostgreSQL 提供了一系列工具,以便于数据库管理员对数据进行…

go gin配置air

一、依赖下载 安装最新,且在你工作区下进行安装,我的是D:/GO是我的工作区,所有项目都在目录下的src, go install github.com/air-verse/airlatest 如果出现类似报错: 将图中第三行 github.com/air-verse/air 替换最…

QT 通过ODBC连接数据库的好方法:

效果图: PWD使用自己的,我的这是自己的,所以你用不了。 以下是格式。 // 1. 设置数据库连接 QSqlDatabase db QSqlDatabase::addDatabase("QODBC");// 建立和QMYSQL数据库的连接 // 设置数据库连接名称(DSN&am…

【Rust自学】15.7. 循环引用导致内存泄漏

说句题外话,这篇文章真心很难,有看不懂可以在评论区问,我会尽快作答的。 喜欢的话别忘了点赞、收藏加关注哦(加关注即可阅读全文),对接下来的教程有兴趣的可以关注专栏。谢谢喵!(・ω…

免杀国内主流杀软的恶意样本分析

目录下存在愤怒的小鸟.exe和fun.dll文件,最新版火绒,windows defender,腾讯电脑管家,360静态扫描都未发现恶意程序 动态执行,杀软也未拦截 上传到virustotal网站分析恶意程序,只有三个引擎检测出来 die分析…

gesp(C++六级)(6)洛谷:P10109:[GESP202312 六级] 工作沟通

gesp(C六级)(6)洛谷:P10109:[GESP202312 六级] 工作沟通 题目描述 某公司有 N N N 名员工,编号从 0 0 0 至 N − 1 N-1 N−1。其中,除了 0 0 0 号员工是老板,其余每名员工都有一个直接领导…

16届蓝桥杯寒假刷题营】第2期DAY5IOI赛

3.小蓝小彬的代码挑战 - 蓝桥云课 问题描述 在蓝桥杯大赛中,小蓝和小彤是一对好朋友。他们在比赛中遇到了一个有趣的挑战。这个挑战是给定一个由大写字母组成的代码,他们需要找出这串代码中有多少个子序列LQB。小蓝和小彬都很聪明,他们想到…

【云安全】云原生-K8S-搭建/安装/部署

一、准备3台虚拟机 务必保证3台是同样的操作系统! 1、我这里原有1台centos7,为了节省资源和效率,打算通过“创建链接克隆”2台出来 2、克隆之前,先看一下是否存在k8s相关组件,或者docker相关组件 3、卸载原有的docker …

【JavaEE】_MVC架构与三层架构

目录 1. MVC架构 2. 三层架构 3. MVC架构与三层架构的对比 3.1 MVC与三层架构的对比 3.2 MVC与三层架构的共性 1. MVC架构 在前文已介绍关于SpringMAC的设计模式,详见下文: 【JavaEE】_Spring Web MVC简介-CSDN博客文章浏览阅读967次,点…

基于Langchain-Chatchat + ChatGLM 本地部署知识库

一、相关环境 参考链接: Github:https://github.com/chatchat-space/Langchain-Chatchat Langchain-chatchat版本:v0.3.1 安装环境:Ubuntu:22.04,CUDA:12.1 二、搭建过程 2.1 环境配置 2.1.1 创建chatchat虚拟环…

【win11】解决msrdc.exe窗口启动导致周期性失去焦点

msrdc.exe randomly stealing focus 最近写代码时,经常出现周期性失去焦点的情况非常恼人,不确定是否是Q4的微软更新引起?换了输入法也不行,只能借助工具来查看:大神的工具非常好: 可以发现是remote app 启动了一个UI…

危机13小时:追踪一场GitHub投毒事件

事件概要 自北京时间 2024.12.4 晚间6点起, GitHub 上不断出现“幽灵仓库”,仓库中没有任何代码,只有诱导性的病毒文件。当天,他们成为了 GitHub 上 star 增速最快的仓库。超过 180 个虚假僵尸账户正在传播病毒,等待不…

论文阅读(十三):复杂表型关联的贝叶斯、基于系统的多层次分析:从解释到决策

1.论文链接:Bayesian, Systems-based, Multilevel Analysis of Associations for Complex Phenotypes: from Interpretation to Decision 摘要: 遗传关联研究(GAS)报告的结果相对稀缺,促使许多研究方向。尽管关联概念…

设计模式-建造者模式、原型模式

目录 建造者模式 定义 类图 优缺点 角色 建造者模式和工厂模式比较 使用案例 原型模式 定义 类图 优缺点 应用场景 应用类型 浅克隆 深克隆 建造者模式 定义 将一个复杂的对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,…

Python GUI 开发 | Qt Designer — 工具介绍

关注这个框架的其他相关笔记:Python GUI 开发 | PySide6 & PyQt6 学习手册-CSDN博客 Qt Designer 即 Qt 设计师,是一个强大、灵活的可视化 GUI 设计工具,可以帮助用户加快开发 PySide6 程序的速度。 Qt Designer 是专门用来制作 PySide6…

园区管理智能化创新引领企业效能提升与风险控制新趋势

内容概要 在现代园区管理中,智能化创新正成为越来越多企业优化效能和控制风险的重要途径。通过引入先进的技术手段,企业能够更高效地管理资源,并实现全面的风险控制。 首先,园区管理系统的基本概念和发展现状让我们看到科技与管…

LTV预估 | 深度学习PLTV之开山鼻祖ZILN

🤣 这一集让我们欢迎基于深度学习的pltv方法:ZILN,ZILN可以说是后面很多研究的参考方法,我看了好几篇最新的pltv论文,都是基于ZILN来做的。 文章目录 1 精简总结2 背景&挑战:3 方法:实验&am…

docker安装emqx

emqx安装 拉取emqx镜像 docker pull emqx/emqx:v4.1.0 运行docker容器 docker run -tid --name emqx -p 1883:1883 -p 8083:8083 -p 8081:8081 -p 8883:8883 -p 8084:8084 -p 18083:18083 emqx/emqx:v4.1.0 放行端口 1、如果要是自己的虚拟机,并且关闭了防火墙&a…

【C++题解】1393. 与7无关的数?

欢迎关注本专栏《C从零基础到信奥赛入门级(CSP-J)》 问题:1393. 与7无关的数? 类型:简单循环 题目描述: 一个整数,如果这个数能够被 7 整除,或者其中有一位是7,我们称…