一、安装准备
在docker hub查看redis镜像版本。查看地址如下:
Dockerhttps://hub-stage.docker.com/_/redis/tags
二、拉取docker镜像
我这里用redis:6.2.14版本,先拉取镜像。命令如下:
docker pull redis:6.2.14
查看刚刚下载的镜像,通过如下命令查看:
docker images
可以看到,我们的镜像已经存在了。
三、创建docker挂载目录
# 创建配置文件目录
mkdir -p /data/redis6.2.14/conf
# 创建持久化数据目录
mkdir -p /data/redis6.2.14/data
执行完以上,两个命令,即可通过ll查看目录,已经存在。
四、添加redis配置文件
在上一步创建的redis配置文件目录(/data/redis6.2.14/conf)下,创建redis.conf配置文件,启动时,会将这个配置文件挂载到容器中。
这个配置文件可以从官网进行下载。
Index of /releases/ (redis.io)https://download.redis.io/releases/?_gl=1*41lfas*_gcl_au*ODYyMTIxNzExLjE3MTQwOTg2OTc.*_ga*NTA3MjM0ODY1LjE3MDM0NjY5Mzk.*_ga_8BKGRQKRPV*MTcxNDExMjg1NS4zLjEuMTcxNDExNzM2MS40MC4wLjA.&_ga=2.129871436.1784406771.1714098697-507234865.1703466939
下载到本地,打开压缩包,将如下的配置文件拷贝到出来,放到部署服务器创建的配置文件目录里面。即/data/redis6.2.14/conf目录下。
放到服务器指定目录:
修改文件,修改配置问,只需修改如下三处即可:
# 关闭保护模式,允许远程连接
protected-mode no
# 开启AOF持久化
appendonly yes
# 密码
requirepass 123456
五、编写docker-compose.yml编排文件
version: '3'
services:
redis: # 服务名称
image: redis:6.2.14 # redis镜像版本
container_name: redis6.2.14 # 容器名称
ports:
- 6379:6379 # 指定宿主机端口与容器端口映射关系,宿主机:容器
volumes:
- /data/redis6.2.14/conf/redis.conf:/etc/redis/redis.conf # 映射配置文件目录,宿主机:容器
- /data/redis6.2.14/data:/data # 映射数据目录,宿主机:容器
restart: always # 容器开机自启
privileged: true # 获取宿主机root权限
command: ["redis-server","/etc/redis/redis.conf"] # 指定配置文件启动redis-server进程
将该文件放到/data/redis6.2.14/目录下。跟data、conf目录同级。如下图:
六、启动容器
启动如下命令:
docker compose -f docker-compose-redis.yml up -d
如下提示,即启动成功。
通过命令查看容器是否启动成功。如下图:
redis启动成功。
七、连接测试
连接测试有两种方式,第一种:直接用外部的工具进行连接。第二种,进入容器内部,通过redis自带的客户端进行连接。
第一种方式:
使用外部客户端工具redis-cli连接。命令如下:
# 命令格式
redis-cli -h [ip] -p [port] -a [pwd]
# 例如:
redis-cli -h 192.168.1.128 -p 6379 -a 123456
如果是远程连接,需要检查是否有防火墙。
如果服务器是阿里云服务器,需要登录阿里云平台对服务器开通安全策略。
第二种方式:
进入docker内部,通过redis自带的redis-cli工具进行验证。进入docker容器内容命令如下:
# 容器ID
docker exec -it b9fa28b3ccb1 /bin/bash
如下图:
连接redis。用redis-cli命令。如下图:
查看redis信息:
redis安装成功。