使用Docker部署Redis
拉取镜像
这里以Redis3.2版本为例1
docker pull redis:3.2
运行容器
1 | docker run -d -p 6379:6379 -v $PWD/data:/data --name redis redis:3.2 redis-server --appendonly yes |
这里对部分命令做一下说明:
- -p 6379:6370: 将容器的6379端口映射到宿主机的6379端口
- -v $PWD/data:/data: 将主机中当前目录下的data挂载到容器的/data,这样做是为了持久化容器内的数据
- redis-server –appendonly yes : 在容器执行redis-server启动命令,并打开redis持久化配置
这里就会有一个问题,可以使用使用自定义的redis.conf配置吗?答案当然是可以的。可以通过两种方式来实现,一种是自定义的Dockerfile,另一种是直接通过docker run命令来进行指定,首先需要在本机准备好一个redis.conf。
Dockerfile
1
2
3FROM redis
COPY redis.conf /usr/local/etc/redis/redis.conf
CMD [ "redis-server", "/usr/local/etc/redis/redis.conf" ]docker run
1
docker run -v $PWD/redis.conf:/usr/local/etc/redis/redis.conf --name redis redis redis-server /usr/local/etc/redis/redis.conf
这时候查看Redis容器启动状况:1
docker ps
1 | $ docker ps |
容器交互
在Redis容器启动成功后,可以通过redis-cli命令连接到容器
使用命令进入容器1
2$ docker exec -it redis redis-cli
127.0.0.1:6379> info
此时可以看到terminal输出了Redis容器的基础信息,说明Redis容器已经可以使用了,也可以使用Redis客户端连接Redis容器,地址是: $ip:6379