1. 程式人生 > 實用技巧 >docker安裝redis並以配置檔案方式啟動

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