Docker Swarm命令简单使用

Docker Swarm部署单应用集群

查看docker swarm信息(command swarm信息)

docker info

创建一个manager节点(不指定--advertise-addr参数会默认为本地地址)

docker swarm init --advertise-addr 121.37.8.12

添加一个worker节点(token信息等包含在创建Manager节点的结果中)

docker swarm join --token SWMTKN-1-3wc7e3p1ih5jxsojcbhj6xog3gl5ybk72ds6xgy831i3l5bevk-78885vpz0axnmvf600nw40va6 121.37.8.12:2377

在manager节点上创建一个服务,其中:

  • replicas表示副本数(包含当前节点)
  • publish参数表示映射的端口(在docker container ls中看不到端口映射信息,只能通过docker swarm ls查看映射信息)
docker service create --name htmltestservice --replicas 2 --publish 5000:80 alexwillbegood/htmltest:v1.0
docker service ls

扩大集群规模(增加该服务work数,但是需要集群有足够的worker)

docker service scale htmltestservice=2

删除服务(所有worker上面的服务同时会被移除)

docker service rm htmltestservice

脱离集群

docker swarm leave -f

docker stack部署多应用集群

如果想部署多个应用的集群就需要使用docker stack,首先编写一个docker-compose.yml文件。

version: '3'
services: 
  htmltest1:
    image: alexwillbegood/htmltest1
    ports: 
      - 5000:80
    deploy:
      #global全节点复制 replicated指定复制
      mode: replicated
      replicas: 2
  htmltest2:
    image: alexwillbegood/htmltest2
    ports: 
      - 5001:80
    deploy:
      mode: replicated
      replicas: 2

创建一个stack

docker stack deploy -c docker-compose.yml teststack
docker stack ls

你可能感兴趣的:(Docker Swarm命令简单使用)