【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

配置文件官网下载地址:http://download.redis.io/redis-stable/redis.conf


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

总结

  1. 基础运行
    docker run -d --name myredis -p 6379:6379 redis
    
  2. 持久化数据
    docker run -d -v /myredis/data:/data redis
    
  3. 自定义配置
    docker run -d -v /myredis/redis.conf:/etc/redis/redis.conf redis redis-server /etc/redis/redis.conf
    
  4. 设置密码
    docker run -d -e REDIS_PASSWORD="mypassword" redis --requirepass "mypassword"
    
  5. 资源限制
    docker run -d --memory=512m --cpus=1 redis
    
  6. 自定义网络
    docker network create redis-network
    docker run -d --network redis-network redis
    

以上是 Docker 运行 Redis 的完整参数和配置方法,具体使用哪种方式可以根据实际需求选择。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

彬彬侠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值