services: planka: image: ghcr.io/plankanban/planka:latest restart: unless-stopped volumes: - data:/app/data environment: BASE_URL: https://planka.marijndoeve.nl DATABASE_URL: postgresql://postgres:${POSTGRES_PASSWORD}@postgres/planka SECRET_KEY: ${SECRET_KEY} SWAGGER_EXPOSED: false DEFAULT_LANGUAGE: en-GB depends_on: postgres: condition: service_healthy labels: - traefik.enable=true - traefik.http.routers.planka.rule=Host(`planka.marijndoeve.nl`) - traefik.http.routers.planka.entrypoints=websecure - traefik.http.routers.planka.tls.certresolver=marijndoeve networks: - internal - web postgres: image: postgres:16 restart: unless-stopped volumes: - db-data:/var/lib/postgresql/data environment: POSTGRES_DB: planka POSTGRES_HOST_AUTH_METHOD: trust POSTGRES_PASSWORD: ${POSTGRES_PASSWORD} healthcheck: test: [ "CMD-SHELL", "pg_isready -U postgres -d planka" ] interval: 10s timeout: 5s retries: 5 networks: - internal volumes: data: db-data: networks: web: external: true internal: external: false