Docker案例分析:搭建Redis服务

 更新时间:2021年12月21日 11:50:30   作者:晴空排云  
这篇文章主要介绍了Docker案例分析:搭建Redis服务方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

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

1 创建挂载目录和文件

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

logfile /log/redis.log

最终目录结构如下图:

在这里插入图片描述

在这里插入图片描述

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运行情况。

在这里插入图片描述

4 Redis使用

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

在这里插入图片描述

在这里插入图片描述

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/conf/redis.conf文件中添加

参考 官方redis镜像

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

相关文章

  • Docker基于macvlan实现跨主机容器通信

    Docker基于macvlan实现跨主机容器通信

    这篇文章主要介绍了Docker基于macvlan实现跨主机容器通信,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-05-05
  • CentOS7 Nvidia Docker环境搭建

    CentOS7 Nvidia Docker环境搭建

    本篇文章主要介绍了CentOS7 Nvidia Docker环境搭建,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02
  • 基于Docker的PHP调用基于Docker的Mysql数据库

    基于Docker的PHP调用基于Docker的Mysql数据库

    Docker 是一个开源的应用容器引擎,自从接触docker以来,一直想建立基于Docker的PHP调用基于Docker的Mysql数据库,下面通过本文给大家介绍下,感兴趣的朋友参考下
    2016-11-11
  • docker镜像无法删除 Error:No such image:xxxxxx解决

    docker镜像无法删除 Error:No such image:xxxxxx解决

    这篇文章主要介绍了docker镜像无法删除 Error:No such image:xxxxxx解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-09-09
  • docker基本命令及使用实例详解

    docker基本命令及使用实例详解

    这篇文章主要介绍了docker基本命令及使用实例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-03-03
  • Docker镜像管理常用操作代码示例

    Docker镜像管理常用操作代码示例

    这篇文章主要介绍了Docker镜像管理常用操作代码示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-10-10
  • MySQL容器中docker-entrypoint-initdb.d目录的使用

    MySQL容器中docker-entrypoint-initdb.d目录的使用

    这篇文章主要介绍了MySQL容器中docker-entrypoint-initdb.d目录的使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-05-05
  • docker打包node项目的过程讲解

    docker打包node项目的过程讲解

    今天小编就为大家分享一篇关于docker打包node项目的过程讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-03-03
  • 详解使用docker搭建hadoop分布式集群

    详解使用docker搭建hadoop分布式集群

    本篇文章主要介绍了详解使用docker搭建hadoop分布式集群,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-02-02
  • Docker部署Java应用程序的实现步骤

    Docker部署Java应用程序的实现步骤

    本文主要介绍了Docker部署Java应用程序的实现步骤,通过将Java应用程序打包成一个Docker镜像,可以实现快速部署、资源隔离和灵活扩展,感兴趣的可以了解一下
    2024-03-03

最新评论