services: database: image: postgres:13.4-alpine environment: - POSTGRES_USER=hedgedoc - POSTGRES_PASSWORD=password - POSTGRES_DB=hedgedoc volumes: - ./db:/var/lib/postgresql/data restart: always networks: - internal app: image: hedgedoc-hedgeagent:1.10.5 container_name: hedgedoc environment: CMD_DB_URL: postgres://hedgedoc:password@database:5432/hedgedoc CMD_PORT: "3000" CMD_HOST: "0.0.0.0" CMD_DOMAIN: hedgedoc.sa6anw.se CMD_URL_ADDPORT: "false" CMD_PROTOCOL_USESSL: "true" CMD_EMAIL: "true" CMD_ALLOW_EMAIL_REGISTER: "true" volumes: - ./uploads:/hedgedoc/public/uploads restart: always depends_on: - database # Since I use Caddy I don't need this # ports: # - "3000:3000" ## If you use Caddy like I do keep below networks: - internal - proxy labels: caddy: hedgedoc.sa6anw.se caddy.reverse_proxy: "{{upstreams 3000}}" networks: internal: internal: true proxy: external: true ## If you don't, you can deleta all of this