Patroni

services:
  etcd:
    image: quay.io/coreos/etcd:v3.5.0
    container_name: etcd
    ports:
      - "2379:2379"
      - "2380:2380"
    environment:
      - ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
      - ETCD_ADVERTISE_CLIENT_URLS=http://etcd:2379
    networks:
      - patroni-net

  patroni-node1:
    image: ghcr.io/patroni/patroni:v2.1
    container_name: patroni-node1
    hostname: patroni-node1
    ports:
      - "5442:5432"
    environment:
      - PATRONI_SCOPE=my_cluster
      - PATRONI_NAMESPACE=/service/
      - PATRONI_NAME=patroni-node1
      - PATRONI_RESTAPI_CONNECT_ADDRESS=patroni-node1:8008
      - PATRONI_RESTAPI_LISTEN=0.0.0.0:8008
      - PATRONI_POSTGRESQL_CONNECT_ADDRESS=patroni-node1:5432
      - PATRONI_POSTGRESQL_LISTEN=0.0.0.0:5432
      - "PATRONI_BOOTSTRAP_DCS={\"etcd\": {\"host\": \"etcd:2379\"}}"
    networks:
      - patroni-net
    depends_on:
      - etcd

  patroni-node2:
    image: ghcr.io/patroni/patroni:v2.1
    container_name: patroni-node2
    hostname: patroni-node2
    ports:
      - "5443:5432"
    environment:
      - PATRONI_SCOPE=my_cluster
      - PATRONI_NAMESPACE=/service/
      - PATRONI_NAME=patroni-node2
      - PATRONI_RESTAPI_CONNECT_ADDRESS=patroni-node2:8008
      - PATRONI_RESTAPI_LISTEN=0.0.0.0:8008
      - PATRONI_POSTGRESQL_CONNECT_ADDRESS=patroni-node2:5432
      - PATRONI_POSTGRESQL_LISTEN=0.0.0.0:5432
      - "PATRONI_BOOTSTRAP_DCS={\"etcd\": {\"host\": \"etcd:2379\"}}"
    networks:
      - patroni-net
    depends_on:
      - etcd

  patroni-node3:
    image: ghcr.io/patroni/patroni:v2.1
    container_name: patroni-node3
    hostname: patroni-node3
    ports:
      - "5444:5432"
    environment:
      - PATRONI_SCOPE=my_cluster
      - PATRONI_NAMESPACE=/service/
      - PATRONI_NAME=patroni-node3
      - PATRONI_RESTAPI_CONNECT_ADDRESS=patroni-node3:8008
      - PATRONI_RESTAPI_LISTEN=0.0.0.0:8008
      - PATRONI_POSTGRESQL_CONNECT_ADDRESS=patroni-node3:5432
      - PATRONI_POSTGRESQL_LISTEN=0.0.0.0:5432
      - "PATRONI_BOOTSTRAP_DCS={\"etcd\": {\"host\": \"etcd:2379\"}}"
    networks:
      - patroni-net
    depends_on:
      - etcd

networks:
  patroni-net:
    driver: bridge

Last updated

Was this helpful?