Docker安装redis的命令很简单,但是很多都是半成品的命令,说白了,就是自己玩玩,一个demo级别的redis而已。
本篇文章以最全的命令方式安装部署Redis。
注意:
本篇只是单机版的,只是公司测试环境使用,或者作为集群方式安装的时候每一个节点的标准安装方式。
1. 查询所有镜像
docker search redis
2. 拉取redis镜像
docker pull redis
3. 查看所有镜像
docker images -a
4. 宿主机创建需要挂载的目录和文件
mkdir -p /usr/local/redis/{data,conf}
vim /usr/local/redis/conf/redis.conf
在redis.conf文件中输入内容:
appendonly yes
appendfilename "appendonly.aof"
解读:
appendonly yes:开启aof持久化。Redis默认的是RDB。
appendfilename "appendonly.aof":持久化文件名,这里你可以叫做a.aof,b.aof都行
容器创建之后会在宿主机的/usr/local/redis/data目录下生成aof文件和rdb持久化文件,分别是:
appendonly.aof
dump.rdb
容器中则是在/data目录生成以上两个文件,同时会在/etc/redis/文件夹下生成redis.conf文件。
5. 创建redis容器
docker run --name redis -d -p 6379:6379 --restart=always --requirepass 123456 \
-v /usr/local/redis/data:/data \
-v /usr/local/redis/conf/redis.conf:/etc/redis/redis.conf \
redis redis-server /etc/redis/redis.conf
命令解决:
docker run:docker创建容器的标准命令
--name redis:指定将要创建的容器的名称
-d:创建容器之后让容器后台运行
-p 6379:6379:端口映射,将宿主机的6379端口映射到容器的6379端口。
格式:宿主机端口:容器端口
--restart=always:自动重启,失败自动重启并且docker重启则对应的容器也自动重启
--requirepass 123456:设置redis的密码为123456
-v 数据卷挂载,将宿主机的/usr/local/redis/data映射到容器的/data
第二个-v,将宿主机的 /usr/local/redis/conf/redis.conf文件映射到容器中/etc/redis/redis.conf
redis:启动的镜像名称或id
redis-server /etc/redis/redis.conf:指定redis服务端启动时加载的配置文件
6. 查看正在运行的容器,或者所有容器
docker ps
docker ps -a
7. 进入容器
# 此处的redis指的是容器名或容器id
docker exec -it redis bash
# 连接redis,进入redis命令行界面
redis-cli
8. 测试
8.1 测试方法一
# 命令行返回:OK
set key1 v1
# 命令行返回:“v1”
set key1
8.2 测试方法二
# 客户端返回:PONG
ping
此时代表一台redis安装成功。
9. 退出redis连接命令行
Ctrl + c
# 或者
exit
10. 退出redis容器
Ctrl + pq
# 或者
exit
或者直接启动redis容器并连接redis进入命令行界面
docker exec -it redis redis-cli
11. 查看redis密码
# 进入容器并连接redis
docker exec -it redis redis-cli
# 查看密码
config get requirepass
12. 设置redis密码
如果之前没有创建密码,测试可以创建密码。
config set requirepass 123456
13. 再次查看密码设置情况
14. 命令行方式登陆
如果我们退出redis连接,再重新登陆需要验证密码。
# 验证密码
auth 123456
否则会报错:
(error) NOAUTH Authentication required
15. 清空密码
# 将密码置为空字符串即可
config set requirepass ""
修改密码同理。