Docker Swarm bind 資料持久化
阿新 • • 發佈:2018-11-10
Docker Swarm bind 資料持久化
- bind:主要將工作節點宿主級檔案或目錄,同步掛載到容器中。
環境:
- 系統:Centos 7.4 x64
- 應用版本:Docker 18.09.0
- 管理節點:192.168.1.79
- 工作節點:192.168.1.78
- 工作節點:192.168.1.77
一、兩種宿主級掛載方式
管理節點:讀寫掛載
docker service create \ --mount type=bind,src=<HOST-PATH>,dst=<CONTAINER-PATH> \ --name myservice \<IMAGE>
管理節點:只讀掛載
docker service create \ --mount type=bind,src=<HOST-PATH>,dst=<CONTAINER-PATH>,readonly \ --name myservice \ <IMAGE>
二、建立bind 資料持久化
1、管理節點:建立服務並新增bind讀寫掛載
docker service create \ --mount type=bind,src=/etc,dst=/data \ --name test01 \ busybox ping www.baidu.com
# 建立服務 docker service create \ # 建立資料卷 type=bind,src=宿主目錄,dst=容器目錄 --mount type=bind,src=/etc,dst=/data \ # 服務名 --name test01 \ # 映象 busybox # 容器內執行指令 ping www.baidu.com命令解析
docker service inspect test02 "Mounts": [ {檢視服務詳細資訊,擷取掛載節點詳細資訊"Type": "bind", "Source": "/etc", "Target": "/data" } ]
2、工作節點:進入容器測試掛載目錄
# 進入容器 docker exec -it e4d7e2d88cab sh
# 測試目錄與/etc一致 / # cd /data /data # ls ....