43 lines
1.6 KiB
YAML
43 lines
1.6 KiB
YAML
services:
|
|
etcd:
|
|
image: bitnami/etcd:latest
|
|
restart: unless-stopped
|
|
environment:
|
|
- ETCD_NAME=${NODE_NAME}
|
|
- ETCD_INITIAL_ADVERTISE_PEER_URLS=http://${NODE_IP}:2380
|
|
- ETCD_LISTEN_PEER_URLS=http://0.0.0.0:2380
|
|
- ETCD_LISTEN_CLIENT_URLS=http://0.0.0.0:2379
|
|
- ETCD_ADVERTISE_CLIENT_URLS=http://${NODE_IP}:2379
|
|
- ETCD_INITIAL_CLUSTER=node1=http://${NODE1_IP}:2380,node2=http://${NODE2_IP}:2380,node3=http://${NODE3_IP}:2380
|
|
- ETCD_INITIAL_CLUSTER_STATE=new
|
|
- ETCD_INITIAL_CLUSTER_TOKEN=patroni-cluster
|
|
- ALLOW_NONE_AUTHENTICATION=yes
|
|
ports:
|
|
- "2379:2379"
|
|
- "2380:2380"
|
|
volumes:
|
|
- /data/compose/postgrecluster/etcd_data:/bitnami/etcd
|
|
|
|
patroni:
|
|
image: patroni/patroni:latest
|
|
restart: unless-stopped
|
|
environment:
|
|
- PATRONI_NAME=${NODE_NAME}
|
|
- PATRONI_POSTGRESQL_LISTEN=0.0.0.0:5432
|
|
- PATRONI_POSTGRESQL_CONNECT_ADDRESS=${NODE_IP}:5432
|
|
- PATRONI_RESTAPI_LISTEN=0.0.0.0:8008
|
|
- PATRONI_RESTAPI_CONNECT_ADDRESS=${NODE_IP}:8008
|
|
- PATRONI_ETCD3_HOSTS=${NODE1_IP}:2379,${NODE2_IP}:2379,${NODE3_IP}:2379
|
|
- PATRONI_SUPERUSER_USERNAME=postgres
|
|
- PATRONI_SUPERUSER_PASSWORD=${POSTGRES_SUPERUSER_PASSWORD}
|
|
- PATRONI_REPLICATION_USERNAME=replicator
|
|
- PATRONI_REPLICATION_PASSWORD=${POSTGRES_REPLICATION_PASSWORD}
|
|
- PATRONI_SCOPE=authentik-cluster
|
|
- PATRONI_POSTGRESQL_DATA_DIR=/data/patroni
|
|
ports:
|
|
- "5432:5432"
|
|
- "8008:8008"
|
|
volumes:
|
|
- /data/compose/postgrecluster/pg_data:/data/patroni
|
|
depends_on:
|
|
- etcd |