diff --git a/portainer/stack.yml b/portainer/stack.yml new file mode 100644 index 0000000..41f095d --- /dev/null +++ b/portainer/stack.yml @@ -0,0 +1,38 @@ +services: + portainer: + image: portainer/portainer-ce:latest + command: -H tcp://tasks.agent:9001 --tlsskipverify + volumes: + - /home/doc/projects/swarm-data/portainer:/data + networks: + - frostlabs + ports: + - 9000:9000 + deploy: + mode: replicated + replicas: 1 + placement: + constraints: + - node.labels.task == control + labels: + - "traefik.enable=true" + - "traefik.swarm.network=frostlabs" + - "traefik.http.routers.portainer.rule=Host(`portainer.frostlabs.me`)" + - "traefik.http.routers.portainer.entrypoints=websecure" + - "traefik.http.routers.portainer.tls=true" + - "traefik.http.routers.portainer.tls.certresolver=cloudflare" + - "traefik.http.services.portainer.loadbalancer.server.port=9000" + + agent: + image: portainer/agent:latest + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - /var/lib/docker/volumes:/var/lib/docker/volumes + networks: + - frostlabs + deploy: + mode: global + +networks: + frostlabs: + external: true