docker-compose 部署Redis
一、配置文件
1.docker-compose.yml
代码如下(示例):
version: '3'
# 服务
services:
# redis
my_redis:
container_name: my_redis
image: redis:latest
restart: always
ports:
- "6379:6379"
volumes:
- /home/redis/data:/data
- /home/redis/conf/redis.conf:/etc/redis.conf
environment:
- "TZ=Asia/Shanghai"
command: /bin/bash -c "redis-server /etc/redis.conf"
networks:
- my_network
networks:
my_network:
driver: bridge
2.redis.conf
代码如下(示例):
# 指定访问redis服务端的端口
port 6379
# 指定客户端连接redis服务器时,当闲置的时间为多少(如300)秒时关闭连接(0表示禁用)
timeout 0
# 默认情况下,Redis不作为守护进程运行。如果需要,请使用“yes”
daemonize no
# 给redis设置密码,不需要密码的话则注释
requirepass 123456
# 开启redis持久化,默认为no
appendonly yes
# 防止出现远程主机强迫关闭了一个现有的连接的错误 默认是300
tcp-keepalive 300
# 指定redis数据库的日志级别,常用的日志级别有debug、verbose、notice、warning,不进行修改的情况下默认的是notice
loglevel notice
# 指定redis的最大内存。由于Redis 在启动时会把数据加载到内存中,当数据达到最大内存时,redis会自动把已经到期和即将到期的key值干掉。
maxmemory 500mb
# 设置了maxmemory的选项,redis内存使用达到上限。使用lru算法删除带有过期集的密钥
maxmemory-policy volatile-lru
# 设置外部网络连接redis服务,开启需配置bind ip或者设置访问密码,关闭(注释掉)此时外部网络可以直接访问
# protected-mode yes