version: "3.2" services: confluence-db: image: postgres:11-alpine container_name: confluence-db environment: - POSTGRES_PASSWORD=confluence - POSTGRES_USER=confluence - POSTGRES_DB=confluence volumes: - ./pgdata:/var/lib/postgresql/data networks: - confluence-db-network confluence-server: image: atlassian/confluence container_name: confluence-server environment: # Memory / Heap Size - JVM_MINIMUM_MEMORY=1024M - JVM_MAXIMUM_MEMORY=2048M - JVM_RESERVED_CODE_CACHE_SIZE=512M # Reverse Proxy Settings - ATL_PROXY_NAME=confluence.example.com - ATL_PROXY_PORT=443 - ATL_TOMCAT_SCHEME=https - ATL_TOMCAT_SECURE=true # Database - ATL_JDBC_URL=jdbc:postgresql://confluence-db:5432/confluence - ATL_JDBC_USER=confluence - ATL_JDBC_PASSWORD=confluence - ATL_DB_TYPE=postgresql # Data Center configuration - ATL_CLUSTER_TYPE=multicast - ATL_CLUSTER_NAME=confluence-cluster - ATL_CLUSTER_ADDRESS=230.0.0.1 - ATL_CLUSTER_TTL=32 # Home Directories - CONFLUENCE_HOME=/opt/confluence-home - ATL_PRODUCT_HOME_SHARED=/opt/confluence-home-shared volumes: - type: bind source: /opt/confluence/confluence-home target: /opt/confluence-home - type: bind source: /opt/confluence/confluence-home-shared target: /opt/confluence-home-shared command: sh -c "/opt/atlassian/confluence/bin/start-confluence.sh -fg" labels: - traefik.enable=true - traefik.docker.network=proxy - traefik.http.routers.confluence.rule=Host(`confluence.example.com`) - traefik.http.routers.confluence.entrypoints=websecure - traefik.http.routers.confluence.tls=true - traefik.http.routers.confluence.tls.certresolver=letsencrypt - traefik.http.services.confluence.loadbalancer.server.port=8090 depends_on: - confluence-db networks: - confluence-db-network - proxy networks: confluence-db-network: name: confluence-db-network proxy: external: true