【Docker】使用 docker run 命令运行一个 redis 容器的参数解析
·
Docker 运行 Redis 的完整参数解析
在 Docker 中运行 Redis,可以使用 docker run 命令,并结合各种参数来优化性能、安全性和管理。以下是 Redis 容器的完整运行命令及参数解析。
如果还没有 redis 镜像,首先要拉取镜像 docker pull redis 。
1. 基本运行命令
docker run -d --name myredis -p 6379:6379 redis
参数解析
-d:后台运行 Redis--name myredis:指定容器名称为myredis-p 6379:6379:将宿主机6379端口映射到容器6379端口redis:使用官方 Redis 镜像
2. 运行 Redis 并挂载数据卷
docker run -d --name myredis \
-p 6379:6379 \
-v /myredis/data:/data \
redis
新增参数
-v /myredis/data:/data:将 Redis 数据持久化到/myredis/data目录
3. 运行 Redis 并指定配置文件
docker run -d --name myredis \
-p 6379:6379 \
-v /myredis/redis.conf:/etc/redis/redis.conf \
redis redis-server /etc/redis/redis.conf
新增参数
-v /myredis/redis.conf:/etc/redis/redis.conf:挂载本地 Redis 配置文件redis-server /etc/redis/redis.conf:使用自定义配置文件启动 Redis
4. 设置 Redis 访问密码
docker run -d --name myredis \
-p 6379:6379 \
-e REDIS_PASSWORD="mypassword" \
redis --requirepass "mypassword"
新增参数
-e REDIS_PASSWORD="mypassword":设置 Redis 访问密码--requirepass "mypassword":Redis 配置项,强制需要密码访问
5. 运行 Redis 并限制资源
docker run -d --name myredis \
-p 6379:6379 \
--memory=512m --cpus=1 \
redis
新增参数
--memory=512m:限制 Redis 最大使用 512MB 内存--cpus=1:限制 Redis 只能使用 1 核 CPU
6. 运行 Redis 并使用自定义网络
docker network create redis-network
docker run -d --name myredis \
--network redis-network \
redis
新增参数
docker network create redis-network:创建 Docker 自定义网络--network redis-network:让 Redis 运行在redis-network网络中
7. 允许远程访问 Redis
docker run -d --name myredis \
-p 6379:6379 \
redis redis-server --bind 0.0.0.0 --protected-mode no
新增参数
--bind 0.0.0.0:允许所有 IP 连接 Redis--protected-mode no:关闭 Redis 保护模式
8. 运行 Redis 以持久化数据(RDB & AOF)
docker run -d --name myredis \
-p 6379:6379 \
-v /myredis/data:/data \
redis redis-server --appendonly yes
新增参数
--appendonly yes:开启 Redis AOF(Append-Only File)模式,提高数据安全性
9. 运行 Redis 并指定最大内存
docker run -d --name myredis \
-p 6379:6379 \
redis redis-server --maxmemory 256mb --maxmemory-policy allkeys-lru
新增参数
--maxmemory 256mb:限制 Redis 最大使用 256MB 内存--maxmemory-policy allkeys-lru:当内存满时,删除最久未使用的键
10. Redis 运行参数完整示例
docker run -d --name myredis \
-p 6379:6379 \
-v /myredis/data:/data \
-v /myredis/redis.conf:/etc/redis/redis.conf \
--memory=512m --cpus=1 \
--restart=always \
redis redis-server /etc/redis/redis.conf \
--requirepass "mypassword" \
--appendonly yes \
--maxmemory 256mb \
--maxmemory-policy allkeys-lru
完整参数解析
-d:后台运行 Redis--name myredis:指定 Redis 容器名称-p 6379:6379:端口映射-v /myredis/data:/data:挂载数据目录-v /myredis/redis.conf:/etc/redis/redis.conf:挂载 Redis 配置文件--memory=512m --cpus=1:限制 Redis 资源使用--restart=always:系统重启后自动启动--requirepass "mypassword":设置 Redis 访问密码--appendonly yes:开启 AOF 持久化--maxmemory 256mb --maxmemory-policy allkeys-lru:设置最大内存及淘汰策略
配置文件官网下载地址:http://download.redis.io/redis-stable/redis.conf
如果已经在redis.conf中修改了配置,运行时指定了配置文件,就不要使用下面这些命令行参数了。要不然配置文件中的这些配置项不生效,以命令行为准。–requirepass “mypassword”
–appendonly yes
–maxmemory 256mb
–maxmemory-policy allkeys-lru
11. 进入 Redis 容器
运行 Redis 容器后,可以使用以下命令进入:
docker exec -it myredis redis-cli
如果 Redis 需要密码:
docker exec -it myredis redis-cli -a "mypassword"
12. 停止和删除 Redis 容器
docker stop myredis # 停止容器
docker rm myredis # 删除容器
如果 Redis 运行时创建了 myredis 相关的 Docker 网络:
docker network rm redis-network
总结
- 基础运行:
docker run -d --name myredis -p 6379:6379 redis - 持久化数据:
docker run -d -v /myredis/data:/data redis - 自定义配置:
docker run -d -v /myredis/redis.conf:/etc/redis/redis.conf redis redis-server /etc/redis/redis.conf - 设置密码:
docker run -d -e REDIS_PASSWORD="mypassword" redis --requirepass "mypassword" - 资源限制:
docker run -d --memory=512m --cpus=1 redis - 自定义网络:
docker network create redis-network docker run -d --network redis-network redis
以上是 Docker 运行 Redis 的完整参数和配置方法,具体使用哪种方式可以根据实际需求选择。
更多推荐

所有评论(0)