1. 程式人生 > >docker swarm集群

docker swarm集群

-a ports ++ details listen www. 批量創建 得到 tac

#docker swarm集群

#環境 centos 7,docker-ce v17.12
#manager節點ip172.16.50.21

#創建swarm集群(默認manager節點)

docker swarm init
#docker swarm join-token manager …… #添加manager節點
#多ip需要指定ip地址
#docker swarm init --listen-addr 172.16.50.21:2377 --advertise-addr 172.16.50.21

#看提示得到加入集群的命令,在node節點執行

docker swarm join --token SWMTKN-1-16xuzm7lxqydugp~~~********  172.16.50.21:2377

#查看集群節點

docker node ls

#創建nginx服務

#docker pull hub.test.com:5000/almi/nginx:0.1 #下載私有倉庫鏡像
docker service create --name nginx  --replicas 2 --publish 80:80 hub.test.com:5000/almi/nginx:0.1
#--network=swarm_test
#replicas 2 創建2個容器,hub.test.com為私有倉庫

#查看swarm集群中的服務

docker service ls
docker service ps nginx

#kill其中一個容器

docker kill 96e6bccc2209
#等會自動啟動一個新的容器

#修改服務實例數量為3

docker service scale nginx=3

#刪除nginx服務

docker service rm nginx

#刪除swarm節點

docker swarm leave --force  #node
docker node rm -f <node>    #manager

#docker swarm 常用命令

docker swarm init               #初始化集群
docker swarm join-token worker  #查看工作節點的 token
docker swarm join-token manager #查看管理節點的 token
docker swarm join               #加入集群中

#docker node 常用命令

docker node ls      #查看所有集群節點
docker node rm      #刪除某個節點(-f強制刪除)
docker node inspect ##查看節點詳情
docker node demote  #節點降級,由管理節點降級為工作節點
docker node promote #節點升級,由工作節點升級為管理節點
docker node update  #更新節點
docker node ps      #查看節點中的 Task 任務

#docker service 常用命令

docker service create   #部署服務
docker service inspect  #查看服務詳情
docker service logs     #產看某個服務日誌
docker service ls       #查看所有服務詳情
docker service rm       #刪除某個服務(-f強制刪除)
docker service scale    #設置某個服務個數
docker service update   #更新某個服務
#++++++++++++++++++++++++++++++

#Docker Stack 部署多個集群服務

#docker stack使用編排文件docker-compose.yml批量部署服務

#創建編排文件docker-compose.yml

mkdir mydocker ; cd mydocker
echo "#  docker stack
version: ‘3‘
services:

  mynginx:
    image: hub.test.com:5000/almi/nginx:0.1
    ports:
     - "8081:80"
    deploy:
      replicas: 3

  busybox:
    image: hub.test.com:5000/busybox:latest
    volumes:
      - "/var/run/docker.sock:/var/run/docker.sock"
    deploy:
      replicas: 2
#">docker-compose.yml

#使用docker-compose.yml批量創建服務

docker stack deploy -c docker-compose.yml deploy-test
docker stack ps deploy-test
#容器名稱 deploy-test_<service名稱>.隨機後綴

#查看

docker service ls
docker ps

#docker stack 常用命令

docker stack deploy   #部署新的堆棧或更新現有堆棧
docker stack ls   #列出現有堆棧
docker stack ps   #列出堆棧中的任務
docker stack rm   #刪除堆棧
docker stack services   #列出堆棧中的服務
docker stack down   #移除某個堆棧(不刪數據)
#++++++++++++++++++++++++++++++
參考
https://www.cnblogs.com/xishuai/p/docker-swarm.html
https://www.cnblogs.com/wj5633/p/6963591.html
http://blog.csdn.net/wanglei_storage/article/details/77508620
#++++++++++++++++++++++++++++++

docker swarm集群