欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  网络运营

Docker案例分析:搭建Redis服务

程序员文章站 2022-02-12 21:08:32
目录1 创建挂载目录和文件2 拉取redis镜像3 创建容器并启动4 redis使用5 模拟数据迁移效果使用官方的redis镜像搭建数据库服务,目前的latest版本对应5.0.8版。挂载本地数据目录...

使用官方的redis镜像搭建数据库服务,目前的latest版本对应5.0.8版。挂载本地数据目录、配置目录、日志目录,便于数据备份和迁移。

1 创建挂载目录和文件

在宿主机创建配置目录~/docker/redis/conf、数据目录~/docker/redis/data和日志目录~/docker/redis/log,并在配置目录中创建文件~/docker/redis/conf/redis.conf,配置文件内容如下。

logfile /log/redis.log

最终目录结构如下图:

Docker案例分析:搭建Redis服务

Docker案例分析:搭建Redis服务

2 拉取redis镜像

使用官方最新版本redis镜像 ,目前为5.0.8版本。

docker pull redis

3 创建容器并启动

挂载本地的配置、数据、日志目录到容器内部。

# --name redis 容器名称为redis
# -p 6379:6379 绑定本机6379端口到容器的6379端口(redis服务端口)
# -v ~/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf 挂载本地配置文件
# -v ~/docker/redis/log/:/log/ 挂载本地日志目录
# -v ~/docker/redis/data:/data 挂载数据文件
# -d 后台运行
# redis-server /usr/local/etc/redis/redis.conf --appendonly yes 使用自定义的配置文件,并启用磁盘数据持久化
docker run --name redis -p 6379:6379 -v ~/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v ~/docker/redis/log/:/log/ -v ~/docker/redis/data:/data -d  redis redis-server /usr/local/etc/redis/redis.conf --appendonly yes

容器启动后可通过本地的~/docker/redis/log/redis.log,查看redis运行情况。

Docker案例分析:搭建Redis服务

4 redis使用

使用本地redis-cli客户端连接redis,并添加key值v=1,执行几次操作后,此时~/docker/redis/data目录下appendonly.aof文件已有相关数据内容。

Docker案例分析:搭建Redis服务

Docker案例分析:搭建Redis服务

5 模拟数据迁移效果

如果此时停止redis容器,再启动一个新的redis容器挂载相同的目录,则新的容器中的redis已经包含上一个容器中的数据。

docker run --name redis1 -p 6379:6379 -v ~/docker/redis/conf/redis.conf:/usr/local/etc/redis/redis.conf -v ~/docker/redis/log/:/log/ -v ~/docker/redis/data:/data -d  redis redis-server /usr/local/etc/redis/redis.conf --appendonly yes

Docker案例分析:搭建Redis服务

如需更多自定义配置,可在本地~/docker/redis/conf/redis.conf文件中添加

参考 官方redis镜像

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。