docker安裝redis並以配置檔案方式啟動
-------------------------------
更新 最近發現伺服器被挖礦病毒入侵了 很有可能是因為redis沒有設定密碼的原因!
-------------------------------
1.獲取redis映象
docker pull redis
指定版本號:
docker pull redis:4.0.9
不加版本號預設獲取最新版本,也可以使用docker search redis檢視映象來源
2.檢視本地映象
docker images
3.然後啟動容器,做對映
①建立配置檔案目錄存放redis.conf,檔案從官網下載。
②建立資料夾,新建配置檔案貼入從官網下載的配置檔案並修改
mkdir /usr/local/docker
vi /usr/local/docker/redis.conf
③修改啟動預設配置(從上至下依次):
bind 127.0.0.1 #註釋掉這部分,這是限制redis只能本地訪問 protected-mode no #預設yes,開啟保護模式,限制為本地訪問 daemonize no#預設no,改為yes意為以守護程序方式啟動,可後臺執行,除非kill程序,改為yes會使配置檔案方式啟動redis失敗 databases 16 #資料庫個數(可選),我修改了這個只是檢視是否生效。。 dir ./ #輸入本地redis資料庫存放資料夾(可選) appendonly yes #redis持久化(可選)
4.docker啟動redis命令
docker run -p 6379:6379 --name myredis -v /usr/local/docker/redis.conf:/etc/redis/redis.conf -v /usr/local/docker/data:/data -d redis redis-server /etc/redis/redis.conf --appendonly yes
命令解釋說明:
-p 6379:6379埠對映:前表示主機部分,:後表示容器部分。
--namemyredis指定該容器名稱,檢視和進行操作都比較方便。
-v掛載目錄,規則與埠對映相同。
為什麼需要掛載目錄:個人認為docker是個沙箱隔離級別的容器,這個是它的特點及安全機制,不能隨便訪問外部(主機)資源目錄,所以需要這個掛載目錄機制。
-dredis表示後臺啟動redis
redis-server /etc/redis/redis.conf以配置檔案啟動redis,載入容器內的conf檔案,最終找到的是掛載的目錄/usr/local/docker/redis.conf
--appendonly yes開啟redis 持久化
5.檢視是否執行成功
docker ps 檢視執行的容器
dockerlogs myredis/27ddba64faa6 (容器名稱/id)
docker基本命令:
檢視所有映象docker images
刪除映象(會提示先停止使用中的容器)docker rmi 映象name/映象id
檢視所有容器docker ps -a
檢視容器執行日誌docker logs 容器名稱/容器id
停止容器執行docker stop 容器name/容器id
終止容器後執行docker start 容器name/容器id
容器重啟docker restart 容器name/容器id
刪除容器docker rm 容器name/容器id