简介
Redis(Remote Dictionary Server)是一款开源的高性能键值存储数据库,支持字符串、哈希、列表、集合、有序集合等多种数据结构,广泛用于缓存、消息队列、会话管理等场景。
创建配置目录
在Linux中创建以下目录结构:
将 myredis.conf 放在 data 同级目录下,先放配置文件再进行后续操作。
启动Redis容器
1 2 3 4 5 6 7 8
| docker run --restart=always \ --log-opt max-size=100m \ --log-opt max-file=2 \ -p 6379:6379 \ --name myredis \ -v /nwa/redis/myredis/myredis.conf:/etc/redis/redis.conf \ -v /nwa/redis/myredis/data:/data \ -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456
|
参数说明:
| 参数 |
说明 |
--restart=always |
总是开机启动 |
--log-opt max-size/max-file |
日志大小与数量限制 |
-p 6379:6379 |
将6379端口映射出去 |
--name myredis |
容器名称 |
-v |
数据卷挂载(配置文件 + 数据目录) |
-d redis |
后台启动Redis |
redis-server ... |
以配置文件启动,加载容器内 /etc/redis/redis.conf(即挂载的 myredis.conf) |
--appendonly yes |
开启Redis持久化 |
--requirepass 123456 |
设置访问密码 |
查看日志并进入CLI
1 2 3 4 5
| # 查看最近30分钟日志 docker logs --since 30m myredis
# 进入redis-cli docker exec -it myredis redis-cli
|
由于设置了密码,连接后需先执行 auth 123456 认证,再用 config get requirepass 查看密码配置。
配置文件 myredis.conf
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77
|
protected-mode no port 6379 tcp-backlog 511 requirepass 123456 timeout 0 tcp-keepalive 300 daemonize no supervised no pidfile /var/run/redis_6379.pid loglevel notice logfile "" databases 30 always-show-logo yes
save 900 1 save 300 10 save 60 10000 stop-writes-on-bgsave-error yes rdbcompression yes rdbchecksum yes dbfilename dump.rdb dir ./
replica-serve-stale-data yes replica-read-only yes repl-diskless-sync no repl-disable-tcp-nodelay no replica-priority 100
lazyfree-lazy-eviction no lazyfree-lazy-expire no lazyfree-lazy-server-del no replica-lazy-flush no
appendonly yes appendfilename "appendonly.aof" no-appendfsync-on-rewrite no auto-aof-rewrite-percentage 100 auto-aof-rewrite-min-size 64mb aof-load-truncated yes aof-use-rdb-preamble yes
lua-time-limit 5000
slowlog-max-len 128
notify-keyspace-events ""
hash-max-ziplist-entries 512 hash-max-ziplist-value 64 list-max-ziplist-size -2 list-compress-depth 0 set-max-intset-entries 512 zset-max-ziplist-entries 128 zset-max-ziplist-value 64 hll-sparse-max-bytes 3000 stream-node-max-bytes 4096 stream-node-max-entries 100
activerehashing yes hz 10 dynamic-hz yes aof-rewrite-incremental-fsync yes rdb-save-incremental-fsync yes
|