Docker 部署 Redis 服务

拉取最新版本的 Redis 镜像:

shell 复制代码
$ sudo docker pull redis:latest

在本地预先创建好 data 目录和 conf/redis.conf 文件。

使用以下命令来运行 Redis 容器:

shell 复制代码
$ sudo docker run -itd --name redis --privileged=true -p 6379:6379 -v /home/ubuntu/docker/redis/data:/data -v /home/ubuntu/docker/redis/conf/redis.conf:/etc/redis/redis.conf docker.io/redis:latest
  • -itd (以交互的方式,新建一个模拟终端运行容器)
    • -i (在后台运行容器,并且打印容器ID)
    • -t (分配一个伪TTY)
    • -d (保持STDIN打开状态)
  • --name (给容器起一个名字方便管理)
  • --privileged=true (使容器内的 root 拥有真正的 root 权限)
  • -p 6379:6379 (将容器的6379端口映射到主机的6379端口)
  • -v /home/ubuntu/docker/redis/data:/data (文件挂载目录)
  • -v /home/ubuntu/docker/redis/conf/redis.conf:/etc/redis/redis.conf (配置文件路径)

通过 docker ps 命令查看容器的运行信息:

shell 复制代码
$ sudo docker ps
CONTAINER ID   IMAGE          COMMAND                  CREATED         STATUS         PORTS                                           NAMES
6a634e5b2f60   redis:latest   "docker-entrypoint.s..."   4 minutes ago   Up 4 minutes   0.0.0.0:6379->6379/tcp, :::6379->6379/tcp       redis

使用以下命令查看和设置密码:

shell 复制代码
$ sudo docker exec -it redis redis-cli
$ 127.0.0.1:6379> config get requirepass
1) "requirepass"
2) ""
$ 127.0.0.1:6379> config set requirepass 连接Redis的密码
OK
$ 127.0.0.1:6379> config get requirepass
1) "requirepass"
2) "连接Redis的密码"

如果抛出 Wrong signature trying to load DB from file 异常, 删除数据文件:

shell 复制代码
$ sudo rm redis/data/dump.rdb
相关推荐
洛克大航海7 分钟前
CentOS8无法使用sudo提权
linux·centos·无法使用 sudo 提权
凉栀お_12 分钟前
MySQL相关知识查询表中内容(第二次作业)
数据库·mysql
郝学胜-神的一滴38 分钟前
使用Linux系统函数递归遍历指定目录
linux·运维·服务器·开发语言·c++·软件工程
ss27340 分钟前
手写Spring第7弹:Spring IoC容器深度解析:XML配置的完整指南
java·前端·数据库
landian0041 小时前
kubuntu24.04 换国内ustc源
linux·kubuntu24.04
七度光阴;1 小时前
Docker入门手册
运维·docker·容器
PFinal社区_南丞1 小时前
PostgreSQL-10个鲜为人知的强大功能
数据库·后端
misty youth1 小时前
配置openguass 教程(自存)
数据库·ubuntu·华为·openguass
DuHz2 小时前
C程序中的数组与指针共生关系
linux·c语言·开发语言·嵌入式硬件·算法
shuair2 小时前
mysql8支持远程访问 -mysql5.7支持远程访问
linux·mysql