安裝docker-machine 
 
建立vm
docker-machine create -d virtualbox --virtualbox-memory=4096 \ --virtualbox-cpu-count=4 --virtualbox-disk-size=40960 \ --virtualbox-no-vtx-check vm1

docker-machine create -d virtualbox --virtualbox-no-vtx-check vm1

docker-machine create -d virtualbox --virtualbox-no-vtx-check vm2

docker-machine create -d virtualbox --virtualbox-no-vtx-check vm3
 
查看vm細節
docker-machine env vm1

docker-machine ls 
進入虛擬機
docker-machine ssh vm1
刪除虛擬機
docker-machine rm vm1
 
初始化docker swarm節點
docker swarm init --advertise-addr 192.168.1.107
加入一個manager節點
docker swarm join --token SWMTKN-1-5ixph5gyd5gj51jg1749d4c6mms31kdnzcpji5c2yz4ke95rdw-2o9ias3hkslk29ph08wa3seon 192.168.1.107:2377
加入worker節點將以上產生的指令貼上即可
 
忘記token查詢的指令 需要在Leader執行
docker swarm join-token -q worker
 
 
查看節點
docker node ls
移除節點
docker node rm
離線維護節點
docker node update --availability drain vm3
復原維護節點
docker node update --availability active vm3
 
建立docker service
docker service create --name=my_nginx nginx
新增port
docker service update --publish-add 80 my_nginx
移除port
docker service update --publish-rm 80 my_nginx
 
擴展docker service
docker service scale my_nginx=5
停止docker service 
docker service scale my_nginx=0
 
查看docker service任務
docker service ps my_nginx
查看docker service細節
docker service inspect --pretty my_nginx
 
刪除docker service
docker service rm  my_nginx
 
查詢docker service的log
docker service logs -f my_nginx
查詢docker service的訊息
docker service inspect z5q69ix2lh7s
查詢docker volume 掛載的目錄
docker volume inspect my_wordpress_wp_data
 
 
視覺化管理工具
Docker Swarm Visualizer
docker service create --name=viz --publish=8080:8080/tcp --constraint=node.role==manager --mount=type=bind,src=/var/run/docker.sock,dst=/var/run/docker.sock dockersamples/visualizer
 
佈署yaml腳本
docker-machine ssh vm1 #進入Leader節點
docker stack deploy --compose-file docker-stack.yml my_app

docker stack deploy -c docker-copose.yml app
 
刪除yaml腳本
docker stack rm app
 
列出及查看Docker Stack
docker stack ls

docker stack ps app
 
刪除Docker Stack
docker stack rm app

  • docker swarm 命令用於管理 Swarm 群集
命令 描述
docker swarm init 初始化一個 swarm 群集
docker swarm join 加入群集作為節點或管理器
docker swarm join-token 管理用於加入群集的令牌
docker swarm leave 離開swarm 群集
docker swarm unlock 解鎖 swarm 群集
docker swarm unlock-key 管理解鎖鑰匙
docker swarm update 更新 swarm 群集
  • docker node 命令用於管理 Swarm 群集中的機器節點
命令 描述
docker node demote swarm 群集管理器中降級一个或多個節點
docker node inspect 顯示一個或多個節點的詳細訊息
docker node ls 列出 swarm 群集中的節點
docker node promote 將一個或多個節點推入到群集管理器中
docker node ps 列出在一個或多個節點上運行的任務,默認為當前節點
docker node rm 從 swarm 群集刪除一個或多個節點
docker node update 更新一個節點
  • docker service 命令用於管理 Swarm 群集中的服務
命令 描述
docker service create 創建服務
docker service inspect 顯示一個或多個服務的詳细信息
docker service logs 獲取服務的日誌
docker service ls 列出服務
docker service rm 刪除一個或多個服務
docker service scale 設置服務的實例數量
docker service update 更新服務
docker service rollback 恢復服務至 update 之前的配置
 
參考資料
https://www.jianshu.com/p/47fa426ff767
 

By tony

自由軟體愛好者~喜歡不斷的思考各種問題,有新的事物都會想去學習嘗試 做實驗並熱衷研究 沒有所謂頂天的技術 只有謙虛及不斷的學習 精進專業,本站主要以分享系統及網路相關知識、資源而建立。 Github http://stnet253.github.io

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料