docker安装redis,进入命令窗口基操练习命令
目录
1.取最新版的 Redis 镜像
2.查看本地镜像
3. 创建数据卷
4. 运行 Redis 容器(使用数据卷)
5. 服务器上进入 Docker 中运行的 Redis 容器的命令窗口(即 Redis CLI)
5.1 使用 docker exec 命令(最常用、推荐)
5.2 如果 Redis 运行在特殊端口或远程主机上
5.3 总结与推荐
1.取最新版的 Redis 镜像
docker pull redis:latest
2.查看本地镜像
docker images
3. 创建数据卷
首先,专门为 Redis 创建一个命名的数据卷:
docker volume create redis_data
4. 运行 Redis 容器(使用数据卷)
docker run -d \--name my-redis \-p 6379:6379 \-v redis_data:/data \-e REDIS_PASSWORD=password_123 \redis:alpine \sh -c 'redis-server --requirepass "$REDIS_PASSWORD" --appendonly yes'
参数解释:
-
-d
:后台运行容器 -
--name my-redis
:给容器命名 -
-p 6379:6379
:端口映射(宿主机端口:容器端口) -
-v redis_data:/data
:关键参数! 将名为redis_data
的卷挂载到容器内的/data
目录(Redis 默认数据目录) -
-e REDIS_PASSWORD=...
:设置 Redis 密码的环境变量 -
redis:alpine
:使用 Alpine Linux 版本的 Redis 镜像(轻量级) -
sh -c 'redis-server ...'
:启动命令,设置密码并开启 AOF 持久化
5. 服务器上进入 Docker 中运行的 Redis 容器的命令窗口(即 Redis CLI)
备注:redis-cli
是 Redis 自带的一个官方命令行工具,它的名字是 "Redis Command Line Interface" 的缩写。
5.1 使用 docker exec
命令(最常用、推荐)
这是进入正在运行的 Docker 容器并启动 Redis 命令行界面(CLI)的标准方法。
命令格式:
docker exec -it <容器名称或容器ID> redis-cli
操作步骤:
-
找到你的 Redis 容器名称或 ID
如果你不记得容器的名称,可以使用以下命令查看所有正在运行的容器:docker ps
-
在输出结果中,找到运行 Redis 镜像的那一行,第一列是容器 ID,最后一列是容器名称。
-
执行连接命令
假设你的容器名称是my-redis
,容器 ID 是f10a6e7ab4c4
,那么以下两种命令都可以:# 使用容器名称 docker exec -it my-redis redis-cli# 使用容器 ID docker exec -it f10a6e7ab4c4 redis-cli
参数解释:
-
exec
:在运行的容器中执行命令。 -
-i
:保持标准输入打开(交互式)。 -
-t
:分配一个伪终端(TTY),这样redis-cli
的界面才会正常显示。 -
my-redis
:你的 Redis 容器的名称。 -
redis-cli
:要在容器内执行的命令,即启动 Redis 客户端。
5.2 如果 Redis 运行在特殊端口或远程主机上
有时你可能没有直接进入容器,而是想从服务器本地连接 Docker 内的 Redis。Docker 通常会将容器的端口映射到宿主机的端口上。
-
查看端口映射
使用docker ps
命令,在PORTS
列可以看到映射关系,例如0.0.0.0:6379->6379/tcp
表示容器的 6379 端口映射到了宿主机的 6379 端口。 -
使用 redis-cli 直接连接
如果你的服务器系统上也安装了redis-cli
工具,你可以像连接远程 Redis 一样连接它:
redis-cli -h 127.0.0.1 -p 6379
如果 Redis 有密码,同样可以加 -a
参数或在连接后使用 AUTH
命令。
5.3 总结与推荐
方法 | 命令 | 适用场景 |
---|---|---|
推荐 | docker exec -it <容器名> redis-cli | 最常用,直接进入 Redis CLI,简单快捷。 |
进阶 | docker exec -it <容器名> /bin/bash | 需要先进入容器环境进行其他操作(如查看配置文件)时使用。 |
备用 | redis-cli -h 127.0.0.1 -p 6379 | 宿主机已安装 redis-cli 且想从外部连接容器时使用。 |