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
相关推荐
笑远19 分钟前
不同服务器架构(x86、ARM、Power、SPARC)对数据库使用的影响
运维·服务器·数据库·架构
reddingtons27 分钟前
在 Ubuntu 下通过 Docker 部署 Caddy 服务器
服务器·ubuntu·docker
hope_wisdom39 分钟前
Linux系统编程之虚拟内存
linux·虚拟内存·linux编程·缺页中断
CIAS1 小时前
Linux vagrant 导入Centos到virtualbox
linux·vagrant·virtualbox
Gadus_1 小时前
MySQL事务
数据库·mysql
coder_lorraine1 小时前
【Docker系列】Docker简介:轻松理解容器技术
docker·容器
小鱼啊小鱼1 小时前
【Linux】基于Exynos4412的U-Boot引导程序移植
linux
佳腾_1 小时前
【高性能缓存Redis_中间件】一、快速上手redis缓存中间件
redis·缓存·云原生·中间件·高缓存
编程就是如此1 小时前
CentOS 系统磁盘扩容并挂载到根目录(/)的详细步骤
linux·centos
武帝为此1 小时前
【MySQL 删除数据详解】
android·数据库·mysql