| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475 | # this file is meant for Docker Swarm stacks only# trying it in compose will fail because of multiple replicas trying to bind to the same port# Swarm currently does not support Compose Spec, so we'll pin to the older version 3.9version: "3.9"services:  redis:    image: redis:alpine    networks:      - frontend  db:    image: postgres:15-alpine    environment:      POSTGRES_USER: "postgres"      POSTGRES_PASSWORD: "postgres"    volumes:      - db-data:/var/lib/postgresql/data    networks:      - backend  vote:    image: reg.hedex.ir/examplevotingapp_vote    ports:      - 5000:80    networks:      - frontend      - traefik_traefik    deploy:      replicas: 1      labels:        traefik.http.services.vote.loadbalancer.server.port: '80'        traefik.http.routers.vote.tls.certresolver: myresolver        traefik.http.routers.vote.entrypoints: websecure        traefik.http.routers.vote.rule: Host(`vote.hedex.ir`)        traefik.http.middlewares.customHeaders.headers.customresponseheaders.X-Powered-By: ParminCloud        traefik.http.routers.vote.middlewares: customHeaders        traefik.docker.network: traefik_traefik  result:    image: reg.hedex.ir/examplevotingapp_result    ports:      - 5001:80    networks:      - backend      - traefik_traefik    deploy:      replicas: 1      labels:        traefik.http.services.result.loadbalancer.server.port: '80'        traefik.http.routers.result.tls.certresolver: myresolver        traefik.http.routers.result.entrypoints: websecure        traefik.http.routers.result.rule: Host(`vote.hedex.ir`)        traefik.http.middlewares.customHeaders.headers.customresponseheaders.X-Powered-By: ParminCloud        traefik.http.routers.result.middlewares: customHeaders        traefik.docker.network: traefik_traefik  worker:    image: reg.hedex.ir/examplevotingapp_worker    networks:      - frontend      - backend    deploy:      replicas: 1networks:  frontend:  backend:  traefik_traefik:  	external: truevolumes:  db-data:
 |