version: "3.9"
services:
  pgweb:
    image: sosedoff/pgweb
    container_name: "pgweb.esin.io"
    environment:
      - "TZ=Asia/Shanghai"
      - "SESSIONS=1"
    labels:
      - "traefik.enable=true"
      - "traefik.http.routers.pgweb.rule=Host(`pgweb.esin.io`)"
      - "traefik.http.routers.pgweb.entrypoints=websecure"
      - "traefik.http.routers.pgweb.tls=true"
      - "traefik.http.routers.pgweb.tls.certresolver=letsencrypt"
      - "traefik.http.routers.pgweb.tls.domains[0].main=esin.io"
      - "traefik.http.routers.pgweb.tls.domains[0].sans=*.esin.io"
      - "traefik.http.routers.pgweb.middlewares=pgweb-mw"
      - "traefik.http.middlewares.pgweb-mw.compress=true"
      - "traefik.http.middlewares.pgweb-mw.compress.excludedcontenttypes=text/event-stream"
      - "traefik.http.services.pgweb.loadbalancer.server.port=8081"
    external_links:
      - postgresql
    networks:
      traefik:
        priority: 1000
      database:
        priority: 100
networks:
  traefik:
    external: true
  database:
    external: true