Untitled

                Never    
YAML
       
version: "3.5"
services:

  patroni1:
    build: ./patroni
    image: $CI_REGISTRY/$CI_PROJECT_PATH:latest
    env_file: patroni.env
    hostname: patroni1
    environment:
        PATRONI_NAME: patroni1
    volumes:
      - /data/patroni1/data:/home/postgres/data
    networks:
      - example-swarm
    deploy:
      placement:
        constraints:
          - node.hostname == ds06.example.com
          
  patroni2:
    image: $CI_REGISTRY/$CI_PROJECT_PATH:latest
    env_file: patroni.env
    hostname: patroni2
    environment:
        PATRONI_NAME: patroni2
    volumes:
      - /data/patroni2/data:/home/postgres/data
    networks:
      - example-swarm
    deploy:
      placement:
        constraints:
          - node.hostname == ds07.example.com
          
  patroni3:
    image: $CI_REGISTRY/$CI_PROJECT_PATH:latest
    env_file: patroni.env
    hostname: patroni3
    environment:
        PATRONI_NAME: patroni3
    volumes:
      - /data/patroni3/data:/home/postgres/data
    networks:
      - example-swarm
    deploy:
      placement:
        constraints:
          - node.hostname == ds08.example.com
          
  haproxy:
    image: $CI_REGISTRY/$CI_PROJECT_PATH:latest
    env_file: patroni.env
    hostname: haproxy
    ports:
        - "5000:5000"
        - "5001:5001"
    command: haproxy
    networks:
      - example-swarm
    deploy:
      mode: global
         
networks:
    example-swarm:
      external: true

Raw Text