使用Portainer管理Docker Swam集群

在Swam主节点创建overlay网络段:为了保持后续创建的全局服务portainer_agent与Portainer容器位于一个网络内,便于相互通信。

docker network create --driver overlay --attachable portainer_agent_network

–attachable :表明这个网络是可以被container所加入,如果没有此参数,那么新增的这个自定义网络后只能被service使用,不能被普通容器使用。

在swam主节点创建portainer_agent服务:

docker service create \
    --name portainer_agent \
    --network portainer_agent_network \
    #表示每个docker节点都创建
    --mode global \
    --constraint 'node.platform.os == linux' \
    --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \
    --mount type=bind,src=//var/lib/docker/volumes,dst=/var/lib/docker/volumes \
    #agent服务的地址
    --env AGENT_CLUSTER_ADDR=tasks.portainer_agent \
    portainer/agent

在swam主节点创建portainer服务

docker service create \
--name portainer \
--replicas=1 \
--publish 9000:9000 \
--network portainer_agent_network \
--constraint 'node.role == manager' \
portainer/portainer \
-H "tcp://tasks.portainer_agent:9001" \
--tlsskipverify

然后访问9000端口即可自动获取agent的所有节点列表展示
使用Portainer管理Docker Swam集群_第1张图片

你可能感兴趣的:(环境部署,docker,运维,网络)