docker安裝redis(總結)
在使用docker安裝redis的過程中,根據網上的一些文章進行操作,但是到最后一步啟動docker容器的時候發生錯誤。在長期戰略合作伙伴——百度的協助下,最終找到了問題的所在,最后寫這篇博客記錄一下,也算是避避坑。
安裝環境:
- 阿里雲服務器(centos7.9)
- docker 1.13.1
安裝模式
- 單機版
一、檢查docker中是否有redis容器和鏡像
#查看所有容器
docker ps -a
#查看鏡像
docker images
二、拉取redis鏡像
#不指定版本號,默認拉取最新版的redis
docker pull redis
#指定的版本號
docker pull redis:5.0.7
查看鏡像是否拉取成功docker images

三、啟動容器
3.1 直接啟動
#myredis是啟動之后的docker容器名稱
docker run --name myredis -d redis
3.2 以配置文件啟動(推薦)
-
創建目錄存放
redis.conf文件mkdir /opt/docker_redis cd /opt/docker_redis -
下載
redis.conf文件wget http://download.redis.io/redis-stable/redis.conf -
文件授權
#給指定文件授權 chmod 777 redis.conf -
修改默認配置信息
vi /opt/docker_redis/redis.conf-
bind 127.0.0.1 通過
#注釋掉,解除本地連接限制
-
protected-mode yes 默認no,保護模式,限制為本地訪問,修改后解除保護模式

-
daemonize yes 默認no 為不守護進程模式,修改為yes

-
設置密碼(建議設置,不設置有風險)

-
持久化(可選)
appendonly yes

-
-
docker啟動redis命令
- 啟動最新版本
docker run -p 6379:6379 --name myredis -v /opt/docker_/redis/redis.conf:/etc/redis/redis.conf -v /opt/docker_/redis/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456- 啟動指定版本
docker run -p 6379:6379 --name myredis -v /opt/docker_/redis/redis.conf:/etc/redis/redis.conf -v /opt/docker_/redis/data:/data -d redis:5.0.7 redis-server /etc/redis/redis.conf --appendonly yes --requirepass 123456命令分析
-
-p 6379:6379 端口映射:前表示主機部分,:后表示容器部分。
-
--name redis 指定該容器名稱,查看和進行操作都比較方便。
-
-v 掛載文件或目錄 :前表示主機部分,:后表示容器部分。
-
-d redis 表示后台啟動redis
-
redis-server /etc/redis/redis.conf 以配置文件啟動redis,加載容器內的conf文件,最終找到的是掛載的目錄/usr/local/docker/redis.conf
-
--appendonly yes 開啟redis 持久化
-
--requirepass 123456 設置密碼為123456
-
檢查redis容器是否在運行
docker ps
-
使用連接工具測試

四、注意事項
參考網上博文安裝失敗的原因在於沒有說明要給redis.conf文件授權,對於小白來說比較容易忽略。如果使用我的辦法沒有用的話。請參考Docker掛載主機目錄Docker訪問出現Permission denied的解決辦法
參考博文:
