1.目錄結(jié)構(gòu)
docker-compose和redis相關(guān)的目錄和文件存儲結(jié)構(gòu)如下:
myProject ----項目名
├── compose
│ └── docker-compose.yml ----compose配置文件
└── redis
├── data ----redis數(shù)據(jù)存儲目錄
├── logs ----redis日志文件目錄(redis.conf中l(wèi)ogfile設(shè)置相對路徑則不需要)
└── redis.conf ----redis配置文件
2.redis.conf配置文件內(nèi)容
使用官方的redis.conf配置文件沒搞定(可能是redis版本有差異谅海,個別參數(shù)不匹配)取劫,這里我們直接將主要參數(shù)提取出來蕴潦。
#開啟遠(yuǎn)程可連接
#bind 127.0.0.1
#自定義密碼
requirepass 12345678
#指定 Redis 監(jiān)聽端口(默認(rèn):6379)
port 6379
#客戶端閑置指定時長后關(guān)閉連接(單位:秒瘩例。0:關(guān)閉該功能)
timeout 0
# 900s內(nèi)如果至少一次寫操作則執(zhí)行bgsave進(jìn)行RDB持久化操作
save 900 1
# 在300s內(nèi),如果至少有10個key進(jìn)行了修改赦拘,則進(jìn)行持久化操作
save 300 10
#在60s內(nèi)慌随,如果至少有10000個key進(jìn)行了修改,則進(jìn)行持久化操作
save 60 10000
#是否壓縮數(shù)據(jù)存儲(默認(rèn):yes躺同。Redis采用LZ 壓縮阁猜,如果為了節(jié)省 CPU 時間,可以關(guān)閉該選項蹋艺,但會導(dǎo)致數(shù)據(jù)庫文件變的巨大)
rdbcompression yes
#指定本地數(shù)據(jù)文件名(默認(rèn):dump.rdb)
dbfilename dump.rdb
#指定本地數(shù)據(jù)文件存放目錄
dir /data
#指定日志文件位置(如果是相對路徑剃袍,redis會將日志存放到指定的dir目錄下)
logfile "redis.log"
3.docker-compose.yml配置文件內(nèi)容
version: "3.8"
services:
redis:
# 鏡像及版本
image: redis:6.2.6
# 自定義容器名
container_name: my-redis
# docker啟動時,自動啟動該容器
restart: always
# 掛載映射,可以讓數(shù)據(jù)或配置持久化
volumes:
# <本地配置文件> : <docker中的配置文件> : <ro:docker容器對該文件只讀,默認(rèn)是rw可讀可寫>
- ../redis/redis.conf:/etc/redis/redis.conf:ro
# <本地數(shù)據(jù)目錄> : <docker中的數(shù)據(jù)目錄>
- ../redis/data:/data
# <本地日志目錄> : <docker中的日志目錄>
# redis不具有自動創(chuàng)建/logs的權(quán)限车海,如果redis.conf中指定的相對位置,則數(shù)據(jù)目錄已經(jīng)可以映射出日志文件
#- ../redis/logs:/logs
# docker執(zhí)行的啟動命令
command: redis-server /etc/redis/redis.conf
ports:
# <本地端口> : <docker容器端口>
- 6378:6379
4. docker-compose啟動和關(guān)閉
# cd compose
# docker-compose up
// 或以后臺方式啟動
# docker-compose up -d
// 關(guān)閉docker-compose
# docker-compose down
5. 檢查redis啟動情況
直接使用客戶端RDM連接redis笛园;
也可以先通過命令檢查一下:
// 查看容器
# docker ps
// 查看端口
# netstat -ntlp
6.查看redis容器的CPU和內(nèi)存使用狀態(tài)
# docker stats my-redis
CONTAINER ID NAME CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O PIDS
0631151ef5d8 my-redis 0.05% 1.766MiB / 3.7GiB 0.05% 13kB / 55.1kB 0B / 8.19kB 6