version: '3.7'
services:
postgresql-master:
image: 'bitnami/postgresql:latest'
networks:
- postgresql
user: root
ports:
- '5432:5432'
volumes:
- '/gfs-share/postgreSqlDatas/master:/bitnami/postgresql'
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
environment:
- POSTGRESQL_REPLICATION_MODE=master
- POSTGRESQL_REPLICATION_USER=repl_demoUser
- POSTGRESQL_REPLICATION_PASSWORD=demoUser@2021!
- POSTGRESQL_USERNAME=demoUser001
- POSTGRESQL_PASSWORD=demoUser@2021#
- POSTGRESQL_DATAbase=demoUser
- POSTGRESQL_LOG_TIMEZONE=Asia/Shanghai
deploy:
mode: replicated
replicas: 1
placement:
constraints: # 添加条件约束
- node.labels.role==db
postgresql-slave:
image: 'bitnami/postgresql:latest'
networks:
- postgresql
ports:
- '5433:5432'
volumes:
- "/etc/timezone:/etc/timezone:ro"
- "/etc/localtime:/etc/localtime:ro"
depends_on:
- postgresql-master
environment:
- POSTGRESQL_REPLICATION_MODE=slave
- POSTGRESQL_REPLICATION_USER=repl_demoUser
- POSTGRESQL_REPLICATION_PASSWORD=demoUser@2021!
- POSTGRESQL_MASTER_HOST=postgresql-master
- POSTGRESQL_PASSWORD=demoUser@2021#
- POSTGRESQL_MASTER_PORT_NUMBER=5432
- POSTGRESQL_LOG_TIMEZONE=Asia/Shanghai
deploy:
mode: replicated
replicas: 1
placement:
constraints: # 添加条件约束
- node.labels.role==db
networks:
postgresql:
external:
name: publicNetWork