Docker 安装 Redis 容器

系列文章目录


文章目录

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

前言

搭建环境:

ubuntu22.04.05

docker

redis: 7.0.10

测试环境:

windows: win11

Redis测试客户端:Tiny RDM


1 获取redis镜像

powershell 复制代码
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的过程。

相关推荐
IT成长日记1 小时前
【Docker基础】Docker数据卷管理:docker volume inspect及其参数详解
运维·docker·容器·volume·inspect
ladymorgana1 小时前
【Docker】如何设置 `wiredTigerCacheSizeGB` 和 `resources.limits.memory`
运维·docker·容器
mcdx1 小时前
基于Docker构建OrangePi5 SDK环境
docker·容器
Java初学者小白3 小时前
秋招Day15 - Redis - 缓存设计
java·数据库·redis·缓存
杨浦老苏3 小时前
Docker端口映射查看工具Dockpeek
网络·docker·群晖
都叫我大帅哥6 小时前
Redis GEO全解:从入门到精通,让你的应用“空间觉醒”
redis
IT成长日记6 小时前
【Docker基础】Docker数据卷管理:docker volume ls及其参数详解
运维·docker·容器·volume ls
偷萧逸苦茶6 小时前
docker常见命令
docker·容器·eureka
都叫我大帅哥6 小时前
Redis 的 HyperLogLog:用 12KB 数清银河系星星的魔法计数器
redis
TT哇7 小时前
【Java EE初阶】计算机是如何⼯作的
java·redis·java-ee