services: app: user: "0:0" image: etherpad/etherpad:latest tty: true stdin_open: true volumes: - plugins:/opt/etherpad-lite/src/plugin_packages - etherpad-var:/opt/etherpad-lite/var depends_on: - postgres_pad environment: NODE_ENV: production DB_TYPE: "postgres" DB_HOST: postgres_pad DB_NAME: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad} DB_PASS: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin} DB_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432} DB_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin} ADMIN_PASSWORD: ${DOCKER_COMPOSE_APP_ADMIN_PASSWORD:-admin} DB_CHARSET: ${DOCKER_COMPOSE_APP_DB_CHARSET:-utf8mb4} # For now, the env var DEFAULT_PAD_TEXT cannot be unset or empty; it seems to be mandatory in the latest version of etherpad DEFAULT_PAD_TEXT: ${DOCKER_COMPOSE_APP_DEFAULT_PAD_TEXT:- } DISABLE_IP_LOGGING: ${DOCKER_COMPOSE_APP_DISABLE_IP_LOGGING:-false} SOFFICE: ${DOCKER_COMPOSE_APP_SOFFICE:-null} TRUST_PROXY: ${DOCKER_COMPOSE_APP_TRUST_PROXY:-true} SKIN_VARIANTS: "super-dark-toolbar dark-background super-dark-editor" restart: always # ports: # - "${DOCKER_COMPOSE_APP_PORT_PUBLISHED:-9001}:${DOCKER_COMPOSE_APP_PORT_TARGET:-9001}" networks: - traefik-public labels: traefik.enable: true traefik.port: 9001 traefik.http.routers.etherpad.rule: Host(`pad.alice.ufsj.edu.br`) traefik.http.services.etherpad.loadbalancer: 9001 traefik.http.routers.etherpad.entrypoints: websecure traefik.http.services.etherpad.loadbalancer.passhostheader: true traefik.http.routers.etherpad.middlewares: sslheader traefik.http.middlewares.sslheader.headers.customrequestheaders.X-Forwarded-Proto: https postgres_pad: image: postgres:15-alpine environment: POSTGRES_DB: ${DOCKER_COMPOSE_POSTGRES_DATABASE:-etherpad} POSTGRES_PASSWORD: ${DOCKER_COMPOSE_POSTGRES_PASSWORD:-admin} POSTGRES_PORT: ${DOCKER_COMPOSE_POSTGRES_PORT:-5432} POSTGRES_USER: ${DOCKER_COMPOSE_POSTGRES_USER:-admin} PGDATA: /var/lib/postgresql/data/pgdata restart: always networks: - traefik-public # Exposing the port is not needed unless you want to access this database instance from the host. # Be careful when other postgres docker container are running on the same port # ports: # - "5432:5432" volumes: - postgres_data:/var/lib/postgresql/data/pgdata volumes: postgres_data: plugins: etherpad-var: networks: traefik-public: external: true