docker compose部署单机redis

205 阅读1分钟

docker compose文件

  1. vi redis.yml加入以下内容
services:  
  redis:  
    image: redis:7.4.0  
    container_name: redis  
    restart: always  
    environment:  
      TZ: 'Asia/Shanghai'  
    volumes:  
      - /srv/redis/conf/redis.conf:/etc/redis/redis.conf:ro  
      - /srv/redis/data:/data  
      - /srv/redis/logs:/logs  
    command: ["redis-server","/etc/redis/redis.conf"]  
    ports:  
      - 6379:6379  
    networks:  
      - redis-n  
    logging:  
      driver: "json-file"  
      options:  
        max-size: "20m"  
        max-file: "3"   
    deploy:  
      resources:  
        limits:  
          cpus: '0.5'  # 限制为使用1个CPU核心  
          memory: 1024m  # 限制为使用1G内存  
networks:  
  redis-n:  
    driver: bridge

redis.conf配置

  1. 创建配置文件对应映射文件路径 mkdir -p /srv/redis/conf vi redis.conf加入以下内容
bind 0.0.0.0  
#自定义密码  
requirepass 123456  
#指定 Redis 监听端口(默认:6379)  
port 6379  
#客户端闲置指定时长后关闭连接(单位:秒。0:关闭该功能)  
timeout 0  
# 900s内如果至少一次写操作则执行bgsave进行RDB持久化操作  
save 900 1  
# 在300s内,如果至少有10个key进行了修改,则进行持久化操作  
save 300 10  
#在60s内,如果至少有10000个key进行了修改,则进行持久化操作  
save 60 10000  
#是否压缩数据存储(默认:yes。Redis采用LZ 压缩,如果为了节省 CPU 时间,可以关闭该选项,但会导致数据库文件变的巨大)  
rdbcompression yes  
#指定本地数据文件名(默认:dump.rdb)  
dbfilename dump.rdb  
#指定本地数据文件存放目录  
dir /data  
#指定日志文件位置(如果是相对路径,redis会将日志存放到指定的dir目录下)  
logfile /logs/redis.log

2. 给对应文件权限

chmod -R 777 /srv/redis/

  1. 启动容器 docker compose -f ./redis.yml up -d

image.png

至此单机的redis部署完毕。