当前位置: 首页 > ds >正文

Docker 安装 Redis 容器

系列文章目录


文章目录

  • 系列文章目录
  • 前言
  • 1 获取redis镜像
  • 2 创建和部署redis容器
  • 3 查看redis是否启动成功
  • 4 使用Redis客户端验证连接
  • 总结


前言

搭建环境:
ubuntu22.04.05
docker
redis: 7.0.10

测试环境:
windows: win11
Redis测试客户端:Tiny RDM


1 获取redis镜像

sudo docker pull redis:7.0.10

这里镜像拉取超时,请移步娶我另一篇文章:从Docker拉取镜像一直失败超时解决办法

2 创建和部署redis容器

docker run -d -p 6379:6379 --restart=always \
-v redis_config:/etc/redis/config \
-v redis_data:/data \
--name redis redis:7.0.10 \
redis-server /etc/redis/config/redis.conf

关键参数功能
1. 容器运行模式与网络设置
-d:让容器以守护进程模式在后台运行,不会占用当前终端。
-p 6379:6379:将宿主机的 6379 端口和容器内部的 6379 端口进行映射,这样外部就能通过宿主机的 6379 端口访问 Redis 服务。
2. 容器重启策略
–restart=always:设置容器的重启策略为始终重启。不管是容器自身出现故障停止运行,还是 Docker 服务重启,亦或是宿主机重启,容器都会自动重新启动,确保 Redis 服务的高可用性。
3. 数据卷挂载情况
-v redis_config:/etc/redis/config:把名为 redis_config 的 Docker 命名卷挂载到容器内的 /etc/redis/config 目录,这个目录主要用于存放 Redis 的配置文件。
-v redis_data:/data:将名为 redis_data 的 Docker 命名卷挂载到容器内的 /data 目录,Redis 的数据文件会存储在这里,实现了数据的持久化存储。
4. 容器标识与基础镜像
–name redis:给容器命名为 redis,方便后续对容器进行管理和操作。
redis:指定使用 Docker Hub 上的官方 Redis 镜像来创建容器。
5. 容器启动命令
redis-server /etc/redis/config/redis.conf:这是容器启动时执行的命令,它会启动 Redis 服务器,并使用挂载的配置卷中的 redis.conf 配置文件来对 Redis 进行配置。
数据持久化与配置机制

  • 配置文件管理:通过挂载 redis_config 卷,你可以在宿主机上对 Redis 的配置文件进行修改,修改后无需重新创建容器,只需重启容器就能让新配置生效。
  • 数据持久化存储:redis_data 卷会保存 Redis 的所有数据。当容器被删除后重新创建,只要不删除这个数据卷,Redis 的数据就不会丢失。

注意要点

  1. 数据卷初始化操作:首次启动容器时,如果 redis_config 卷中没有 redis.conf 文件,Redis 会使用默认配置运行。你可以先不挂载配置卷启动容器,然后把容器内的默认配置文件复制到宿主机,再进行挂载。
  2. 配置文件权限问题:要保证宿主机上挂载的配置文件对容器内的 Redis 进程有可读权限,否则 Redis 可能无法正常启动。
  3. 生产环境参数设置:在生产环境中,建议根据实际需求调整 redis.conf 中的参数,例如设置密码、调整内存策略等。

通过这种方式部署 Redis 容器,能够实现配置与数据的分离,便于后续的维护和升级。

3 查看redis是否启动成功

1、查看docker容易redis的状态

sudo docker ps -a

在这里插入图片描述
此时状态是Restarting,是有问题的。

2、查看redis日志

sudo docker logs -f redis

在这里插入图片描述
3、查看数据卷详情

sudo docker volume inspect redis_config

在这里插入图片描述
4、进入此目录:

cd /var/lib/docker/volumes/redis_config/_data

注意:必须切换为root用户

5、创建redis.conf文件

touch redis.conf

6、在此文件中,添加以下内容

appendonly yes
port 6379	
requirepass 1234
bind 0.0.0.0	

配置好以后,重启redis:

docker restart redis

7、再次查看docker的redis容器状态

docker ps -a

在这里插入图片描述
此时成功

4 使用Redis客户端验证连接

使用的Redis客户端为Tiny RDM,下载地址为:Tiny RDM官网下载
安装完成以后打开:

1、创建连接
在这里插入图片描述
2、点击测试连接
在这里插入图片描述
3、点击确定,如下
在这里插入图片描述
此时,环境已经搭建完成。


总结

以上,就是在ubuntu上面使用docker部署redis的过程。

http://www.xdnf.cn/news/10784.html

相关文章:

  • SQL 执行顺序详解
  • Laplace 噪声
  • 扩展数据(Concatenate)组件研究
  • 《AI Agent项目开发实战》DeepSeek R1模型蒸馏入门实战
  • Python----目标检测(《YOLO9000: Better, Faster, Stronger》和YOLO-V2的原理与网络结构)
  • SystemVerilog—三种线程之间的区别
  • 掌握HttpClient技术:从基础到实战(Apache)
  • IBM 与嘉士伯(Carlsberg)携手推进 SAP S/4HANA 数字化转型,打造啤酒行业新范式
  • Altium Disigner(16.1)学习-元器件封装
  • 从0开始学vue:pnpm怎么安装
  • 【深度学习】实验四 卷积神经网络CNN
  • 【设计模式-3.5】结构型——装饰器模式
  • 网络攻防技术二:密码学分析
  • 从0开始学vue:vue3和vue2的关系
  • VitalInsight智能体检报告解读
  • YOLOv5 :训练自己的数据集
  • SpringBoot(六)--- AOP、ThreadLocal
  • FastAPI安全认证:从密码到令牌的魔法之旅
  • 打卡第34天:MLP神经网络训练
  • 有公网ip但外网访问不到怎么办?内网IP端口映射公网连接常见问题和原因
  • OpenCV4.4.0下载及初步配置(Win11)
  • 【iOS(swift)笔记-14】App版本不升级时本地数据库sqlite更新逻辑二
  • 从 AMQP 到 RabbitMQ:核心组件设计与工作原理(二)
  • 使用 HTML + JavaScript 实现图片裁剪上传功能
  • Java Script函数
  • 操作系统:文件系统笔记
  • 用“红烧鱼”类比说明卷积神经网络CNN的概念
  • docker使用sh脚本创建容器
  • day 43
  • [SC]SystemC语法小结(三)