第一步:獲取鏡像
docker pull redis:latest
第二步:生成容器
創建宿主機 redis 容器的數據和配置文件目錄
# 這里我們在 /home/docker 下創建 mkdir /home/docker/redis/{conf,data} -p cd /home/docker/redis
獲取 redis 的默認配置模版
# 獲取 redis 的默認配置模版 # 這里主要是想設置下 redis 的 log / password / appendonly # redis 的 docker 運行參數提供了 --appendonly yes 但沒 password wget https://raw.githubusercontent.com/antirez/redis/4.0/redis.conf -O conf/redis.conf # 直接替換編輯 sed -i 's/logfile ""/logfile "access.log"/' conf/redis.conf sed -i 's/# requirepass foobared/requirepass 123456/' conf/redis.conf sed -i 's/appendonly no/appendonly yes/' conf/redis.conf # 這里可能還需配置一些 bind protected-mode
創建並運行一個名為 myredis 的容器
# 創建並運行一個名為 myredis 的容器 docker run \ -p 6379:6379 \ -v $PWD/data:/data \ -v $PWD/conf/redis.conf:/etc/redis/redis.conf \ --privileged=true \ --name myredis \ -d redis redis-server /etc/redis/redis.conf # 命令分解 docker run \ -p 6379:6379 \ # 端口映射 宿主機:容器 -v $PWD/data:/data:rw \ # 映射數據目錄 rw 為讀寫 -v $PWD/conf/redis.conf:/etc/redis/redis.conf:ro \ # 掛載配置文件 ro 為readonly --privileged=true \ # 給與一些權限 --name myredis \ # 給容器起個名字 -d redis redis-server /etc/redis/redis.conf # deamon 運行容器 並使用配置文件啟動容器內的 redis-server
查看活躍的容器
# 查看活躍的容器 docker ps # 如果沒有 myredis 說明啟動失敗 查看錯誤日志 docker logs myredis # 查看 myredis 的 ip 掛載 端口映射等信息 docker inspect myredis # 查看 myredis 的端口映射 docker port myredis
第三步:配置外網可以訪問
更改redis.conf 文件
# bind 127.0.0.1 protected-mode no
進入容器
docker exec -it myredis bash redis-cli