更好的阅读体验:点这里 ( www.doubibiji.com
)
10 常用容器部署-Redis
下面介绍一下常用容器的部署。可以先简单了解下,用到再来详细查看。
在 Docker 中部署 Redis 容器。
10.1 搜索镜像
首先搜索镜像,命令:
docker search redis
找到官方镜像:
10.2 拉取镜像
拉取镜像,命令:
docker pull redis
10.3 配置
建立相应的目录,用于挂载,根据自己的目录进行新建:
mkdir -p /home/doubi/redis/data
mkdir -p /home/doubi/redis/conf
Redis 默认只能在本地访问,所以我们需要使用配置文件。
配置文件从哪获取?
可以从官网下载相应版本的配置文件,https://redis.io/docs/management/config/
。如果找不到可以下载指定版本的 redis 安装包,在安装包中找到 redis.conf
。
如果你使用的是最新版本的 docker 镜像,不知道版本号是多少,可以去 DockerHub 官网查看,也可以先启动一个容器,然后在宿主机使用如下命令查看:
docker exec -it 容器ID redis-server -v
下载完 redis.conf
复制一份到 /home/doubi/redis/conf
目录下。
然后按需修改配置:
# bind 127.0.0.1 # 注释掉,这是限制redis只能本地访问
protected-mode no # 默认yes,开启保护模式,限制为本地访问
daemonize no # 使用no,使用yes后台启动会和 docker run -d 的参数冲突,可能会启动失败
appendonly yes # redis持久化(可选)
requirepass 密码 # 配置redis访问密码
10.4 启动容器
配置文件修改好了,下面可以启动容器了,在启动的时候,指定配置文件。
命令:
docker run -d --privileged=true --restart=always --name redis -p 6379:6379 \
-v /home/doubi/redis/conf:/etc/redis \
-v /home/doubi/redis/data:/data \
-v /etc/localtime:/etc/localtime redis redis-server /etc/redis/redis.conf
解释一下:
-d
:运行容器在后台;--privileged=true
:给予容器所有主机的权限;--restart=always
:设置容器的重启策略为总是重启。这意味着无论容器退出状态如何,Docker 都会尝试自动重启它;--name redis
:为容器指定一个名字,随便起,我这里叫 redis;-p 6379:6379
:端口映射。将主机的 6379 端口映射到容器的 6379 端口,这样你就可以通过主机的 6379 端口访问容器内的 Redis 服务。-v /home/doubi/redis:/etc/redis
:容器卷映射。将主机上的/home/doubi/redis
目录映射到容器内的/etc/redis
目录,在这个目录下存放配置文件;-v /home/doubi/redis/data:/data
:容器卷映射。将主机上的/home/doubi/redis/data
目录映射到容器内的/data
目录,这样可以将容器内的数据保存到宿主机,这样即使容器被删除,数据也不会丢失;-v /etc/localtime:/etc/localtime
:容器卷映射。将主机上的系统时间(/etc/localtime
)映射到容器内,以确保容器内的时间和主机同步。redis
:指定要运行的 Docker 镜像的名字,即 redis 镜像。redis-server /etc/redis/redis.conf
: 在容器内部启动 Redis 服务器,并使用挂载的配置文件/etc/redis/redis.conf
。
启动容器后就可以链接到 Redis 服务了,需要使用在配置文件中配置的密码。