通过docker search redis和docker pull redis下载redis镜像
2. 新建挂载配置文件夹因为 redis 默认配置你会发现只能够本地连接,不能进行远程访问,使用 Redis Desktop Manager连接都会报错,因此需要手动挂载 redis 配置文件
新建data和conf两个文件夹,位置随意。本例使用上次安装nginx时使用的宿主机位置/docker/下
eg:
mkdir -p /docker/redis/data mkdir -p /docker/redis/conf3. 增加配置文件 redis.conf
去redis官网下载相应版本的tar包,并复制其中的redis.conf(这里有个坑,redis的docker容器里面是不自带配置文件的),通过Xftp或FileZilla上传到刚才新建的redis/conf中
修改配置文件:
4. 创建redis容器并启动daemonize no。非后台模式,如果为yes会导致redis无法启动,因为后台会导致docker无任务可做而退出。(有些版本的配置文件本身就是no,检查下即可,相反,如果不使用docker安装,则需要改成yes方便后台启动)
# bind 127.0.0.1 -::1。把未注释的bind 127.0.0.1这一行注释掉,否则只能接受本机的访问请求。不写的情况下,无限制接受任何ip地址的访问。生产环境肯定要写你应用服务器的地址;服务器是需要远程访问的,所以需要将其注释掉
protected-mode no。如果开启了protected-mode,那么在没有设定bind ip且没有设密码的情况下,Redis只允许接受本机的响应,也就是说如果设置了密码,则不用关闭保护模式
requirepass 123456 。密码
appendonly yes。持久化
执行命令如下:
docker run --name redis -p 6379:6379 -v /docker/redis/data:/data -v /docker/redis/conf/redis.conf:/etc/redis/redis.conf -d redis redis-server /etc/redis/redis.conf --appendonly yes
释义如下:
- –name:给容器起一个名
- -p:端口映射 宿主机:容器
-
-v /docker/redis/conf/redis.conf:/etc/redis/redis.conf:映射配置文件
-
-v /docker/redis/data:/data:映射数据目录
- -d:后台运行
- redis-server /etc/redis/redis.conf:指定配置文件启动redis-server进程
- --appendonly yes: 开启数据持久化
通过docker ps查看启动状态,是否成功
6. 容器内部连接进行测试执行docker exec -it redis redis-cli 命令,进入终端。
通过auth password进行登陆。
完成命令如下:
7. 使用Redis Desktop Manager客户端进行连接 8. 小结注意如果出现该错误: (error) NOAUTH Authentication required.
说明没有输入密码进行验证,请输入:auth 你的密码
- 当启动容器端口报错时,可以通过netstat -lntp | grep 6379查看哪个程序在占用
- 可以通过sudo kill 6379杀掉占用端口的程序
- 如果使用阿里云等,请务必把相应端口打开



