查看镜像
docker search redis
下载镜像
查看镜像也可以去docker hub 查找
docker pull 镜像名称:版本号
docker pull redis:6.2.6
启动redis并使用宿主机的配置文件
创建redis映射目录
mkdir -p /docker_data/redis/
vim /docker_data/redis/redis.conf
警告:不同版本的配置文件会有所差异,建议从官网下载配置文件进行拷贝到linux服务器!!!否则会出现奇奇怪怪的bug!!
官网下载redis.conf配置文件修改
注释掉bind 127.0.0.1
protected-mode no
daemonize no
配置文件这里daemonize no可能会启动失败并且不会打印错误,因此如果启动失败可以先把它还原回yes!!!
启动redis并使用宿主机配置文件和宿主机的文件夹存放数据
docker run -p 6379:6379 --name redis-6.2.6 --privileged=true --restart=always -v /docker_data/redis/redis.conf:/etc/redis/redis.conf -v /docker_data/redis/data:/data -d redis:6.2.6 redis-server /etc/redis/redis.conf
如果是docker desktop
docker run -p 6379:6379 --name redis-7.0.15-alpine --restart=always -d redis:7.0.15-alpine redis-server
开放防火墙6379端口,运行外网访问
firewall-cmd --zone=public --add-port=6379/tcp --permanent
必须重启防火墙
firewall-cmd --reload
进入到redis的cli证明redis启动成功
docker exec -it redis-6.2.6 /bin/bash
重启redis证明使用的是宿主机的配置文件
修改宿主机redis.conf配置文件的database 16为10
docker restart redis-6.2.6
进入redis
docker exec -it redis-6.2.6 /bin/bash
redis-cli
我设置了15个库,超过15个就报错,redis的库是从0开始的因此15个是0-14
127.0.0.1:6379> select 15
(error) ERR DB index is out of range
127.0.0.1:6379> select 14
OK