• 设为首页
  • 收藏本站
  • 积分充值
  • VIP赞助
  • 手机版
  • 微博
  • 微信
    微信公众号 添加方式:
    1:搜索微信号(888888
    2:扫描左侧二维码
  • 快捷导航
    福建二哥 门户 查看主题

    使用Docker部署Redis并配置持久化与密码保护的详细步骤

    发布者: 404号房间 | 发布时间: 2025-6-19 12:41| 查看数: 130| 评论数: 0|帖子模式

    1. 准备工作


    1.1 安装 Docker

    确保已安装 Docker。如果未安装,请参考以下命令:
    Ubuntu/Debian:
    1. sudo apt-get update
    2. sudo apt-get install docker.io
    复制代码
    CentOS/Fedora:
    1. sudo yum install docker
    复制代码
    macOS/Windows:
    下载并安装 Docker Desktop
    安装完成后,启动 Docker 服务:
    1. sudo systemctl start docker
    2. sudo systemctl enable docker
    复制代码
    2. 创建 Redis 目录和配置文件


    2.1 创建目录

    1. /home/middleware/redis
    复制代码
    下创建
    1. data
    复制代码
    目录用于存放 Redis 数据,并创建
    1. redis.conf
    复制代码
    配置文件:
    1. mkdir -p /home/middleware/redis/data
    2. touch /home/middleware/redis/redis.conf
    复制代码
    2.2 编辑配置文件

    编辑
    1. redis.conf
    复制代码
    文件,添加以下内容:
    1. bind 0.0.0.0
    2. port 6379
    3. dir /data
    4. dbfilename dump.rdb
    5. # 设置 Redis 密码
    6. requirepass yourpassword  

    7. # RDB 持久化配置

    8. # 900 秒(15 分钟)内至少有 1 个键被修改时触发保存
    9. save 900 1     

    10. # 300 秒(5 分钟)内至少有 10 个键被修改时触发保存
    11. save 300 10   

    12. # 60 秒(1 分钟)内至少有 10000 个键被修改时触发保存
    13. save 60 10000  
    复制代码

      1. bind 0.0.0.0
      复制代码
      :允许所有 IP 连接。
      1. port 6379
      复制代码
      :Redis 服务端口。
      1. dir /data
      复制代码
      :数据存储目录。
      1. dbfilename dump.rdb
      复制代码
      :数据文件名。
      1. requirepass yourpassword
      复制代码
      :设置 Redis 密码(将
      1. yourpassword
      复制代码
      替换为你的密码)。
      1. save
      复制代码
      :配置 RDB 持久化规则(详见下文解释)。

    2.3 save 指令详解
    1. save
    复制代码
    指令用于配置 Redis 的 RDB 持久化策略。它的语法如下:
    1. save <seconds> <changes>
    复制代码

      1. <seconds>
      复制代码
      :时间间隔(秒)。
      1. <changes>
      复制代码
      :在指定时间间隔内,如果数据发生了至少
      1. <changes>
      复制代码
      次修改,则触发保存。
    示例解释
    在配置文件中:
    1. save 900 1
    2. save 300 10
    3. save 60 10000
    复制代码

      1. save 900 1
      复制代码


      • 如果 900 秒(15 分钟) 内,至少有 1 个键 被修改,则触发保存。

      1. save 300 10
      复制代码


      • 如果 300 秒(5 分钟) 内,至少有 10 个键 被修改,则触发保存。

      1. save 60 10000
      复制代码


      • 如果 60 秒(1 分钟) 内,至少有 10000 个键 被修改,则触发保存。

    为什么需要多个
    1. save
    复制代码
    规则?
    多个
    1. save
    复制代码
    规则可以平衡 数据安全性性能

    • 频繁保存(如
      1. save 60 10000
      复制代码
      ):确保数据丢失的风险最小化,但可能会影响性能,因为频繁的磁盘写入会增加 I/O 负载。
    • 较少保存(如
      1. save 900 1
      复制代码
      ):减少磁盘 I/O,但可能会增加数据丢失的风险。
    通过组合多个规则,Redis 可以在不同场景下灵活地触发数据保存。

    3. 使用 Docker 运行 Redis


    3.1 拉取 Redis 镜像

    从 Docker Hub 拉取 Redis 官方镜像:
    1. docker pull redis
    复制代码
    3.2 启动 Redis 容器

    运行以下命令启动 Redis 容器,并挂载配置文件和数据目录:
    1. docker run --name redis -d \
    2.   -p 6379:6379 \
    3.   -v /home/middleware/redis/data:/data \
    4.   -v /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf \
    5.   redis redis-server /usr/local/etc/redis/redis.conf
    复制代码

      1. --name redis
      复制代码
      :容器命名为
      1. redis
      复制代码

      1. -d
      复制代码
      :后台运行容器。
      1. -p 6379:6379
      复制代码
      :将主机的 6379 端口映射到容器的 6379 端口。
      1. -v /home/middleware/redis/data:/data
      复制代码
      :挂载数据目录。
      1. -v /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf
      复制代码
      :挂载配置文件。
      1. redis redis-server /usr/local/etc/redis/redis.conf
      复制代码
      :使用自定义配置文件启动 Redis。

    4. 验证 Redis 部署


    4.1 检查容器状态

    运行以下命令,查看容器是否正常运行:
    1. docker ps
    复制代码
    4.2 连接 Redis

    使用
    1. redis-cli
    复制代码
    连接 Redis,并验证密码:
    1. docker exec -it redis redis-cli
    复制代码
    在 Redis CLI 中执行以下命令进行认证:
    1. AUTH yourpassword
    复制代码
    认证成功后,可以执行 Redis 命令,例如:
    1. SET mykey "Hello, Redis!"
    2. GET mykey
    复制代码
    4.3 验证数据持久化

    停止并重新启动 Redis 容器:
    1. docker stop redis
    2. docker start redis
    复制代码
    再次连接 Redis,检查数据是否仍然存在:
    1. docker exec -it redis redis-cli
    2. AUTH yourpassword
    3. GET mykey
    复制代码
    5. 使用 Docker Compose(可选)

    如果你更喜欢使用 Docker Compose 管理 Redis 容器,可以创建
    1. docker-compose.yml
    复制代码
    文件:
    1. version: '3'
    2. services:
    3.   redis:
    4.     image: redis
    5.     container_name: redis
    6.     ports:
    7.       - "6379:6379"
    8.     volumes:
    9.       - /home/middleware/redis/data:/data
    10.       - /home/middleware/redis/redis.conf:/usr/local/etc/redis/redis.conf
    11.     command: redis-server /usr/local/etc/redis/redis.conf
    复制代码
    然后运行以下命令启动服务:
    1. docker-compose up -d
    复制代码
    停止服务:
    1. docker-compose down
    复制代码
    6. 目录结构

    最终的
    1. /home/middleware/redis
    复制代码
    目录结构如下:
    1. /home/middleware/redis/
    2. ├── data/             # Redis 持久化数据目录
    3. │   └── dump.rdb      # Redis 数据文件
    4. └── redis.conf        # Redis 配置文件
    复制代码
    7. 总结

    通过以上步骤,你已经成功使用 Docker 部署了 Redis,并通过
    1. redis.conf
    复制代码
    配置文件实现了数据持久化和密码保护。本文还详细解释了
    1. save
    复制代码
    指令的作用和配置方法,帮助你根据业务需求灵活调整持久化策略。
    以上就是使用Docker部署Redis并配置持久化与密码保护的详细步骤的详细内容,更多关于Docker部署Redis持久化与密码保护的资料请关注脚本之家其它相关文章!

    来源:https://www.jb51.net/database/337313np3.htm
    免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!

    最新评论

    浏览过的版块

    QQ Archiver 手机版 小黑屋 福建二哥 ( 闽ICP备2022004717号|闽公网安备35052402000345号 )

    Powered by Discuz! X3.5 © 2001-2023

    快速回复 返回顶部 返回列表