🧑🏫 详细教程:通过 Docker 安装单节点 Redis
🛠️ 前提条件:
- 你需要在 Ubuntu 系统上进行操作(如果你在其他系统上操作,可以按相似步骤进行调整)。
- 已安装 Docker 和 Docker Compose(如果还没安装,后面会告诉你如何安装)。
✅ 步骤 1:安装 Docker
1.1 更新软件包列表:
首先,确保系统的软件包列表是最新的。
bash
sudo apt update
1.2 安装 Docker:
执行以下命令安装 Docker:
bash
sudo apt install docker.io -y
1.3 启动 Docker 服务并设置开机自启:
安装完成后,启动 Docker 并设置开机自启:
bash
sudo systemctl enable --now docker
✅ 步骤 2:安装 Docker Compose(如果需要的话)
如果你需要使用 Docker Compose 来管理多个 Docker 容器,执行以下命令安装它:
bash
sudo apt install docker-compose -y
✅ 步骤 3:拉取 Redis 镜像
Redis 镜像是一个用于运行 Redis 的模板,你可以从 Docker Hub 上拉取最新的 Redis 镜像。
执行以下命令来拉取 Redis 镜像:
bash
sudo docker pull redis:latest
这条命令会下载最新的 Redis 镜像(也可以下载其他版本的 Redis,例如 redis:5.0.14
,根据需要选择)。
✅ 步骤 4:运行 Redis 容器
现在我们已经准备好 Redis 镜像,接下来用 Docker 运行一个单节点的 Redis 容器。
4.1 运行命令:
使用以下命令启动 Redis:
bash
sudo docker run -d --name redis-single \
-p 6379:6379 \
redis:latest \
redis-server --bind 0.0.0.0 --protected-mode no
📌 命令解释:
-d
:表示后台运行容器(守护进程模式)。--name redis-single
:为这个容器指定一个名字,这里我们叫它redis-single
。-p 6379:6379
:将本地机器的 6379 端口映射到容器内的 6379 端口,这是 Redis 默认的端口。redis:latest
:指定使用 Redis 最新的镜像版本。redis-server --bind 0.0.0.0 --protected-mode no
:这条命令启动 Redis,并允许它绑定到所有 IP 地址,并关闭保护模式,这样你就可以从任何地方访问 Redis。
4.2 检查容器是否运行成功:
你可以使用以下命令检查 Redis 容器是否成功启动:
bash
sudo docker ps
输出应该类似于:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
xxxxxxx redis:latest "docker-entrypoint.s..." 1 minute ago Up 1 minute 0.0.0.0:6379->6379/tcp redis-single
如果你看到了上面的输出,说明 Redis 容器已经启动并且在 6379 端口监听。
✅ 步骤 5:连接到 Redis 容器
要与 Redis 进行交互,我们需要连接到 Redis 容器内部并使用 redis-cli
进行命令行操作。
执行以下命令:
bash
sudo docker exec -it redis-single redis-cli
5.1 在 Redis 中设置和获取键值对:
在进入 Redis 命令行后,你可以进行一些基本的操作,例如设置一个键值对:
bash
set mykey "Hello, Redis!"
然后,获取该键值对:
bash
get mykey
Redis 会返回:
"Hello, Redis!"
这证明 Redis 单节点已经成功运行并可以正常使用!
✅ 步骤 6:检查 Redis 容器日志
如果 Redis 容器启动遇到问题,或者你想查看容器的运行日志,可以使用以下命令:
bash
sudo docker logs redis-single
这会显示容器的启动日志,帮助你诊断是否有错误发生。
✅ 步骤 7:停止 Redis 容器
如果你想停止 Redis 容器,可以使用以下命令:
bash
sudo docker stop redis-single
这会停止名为 redis-single
的容器。
✅ 步骤 8:删除 Redis 容器
如果你想删除 Redis 容器,可以先停止它,然后使用以下命令删除:
bash
sudo docker rm redis-single