version: "3" services: app: build: context: . dockerfile: Dockerfile target: base container_name: go-watch environment: - GOWATCH_DATABASE_DSN=postgres://gorm:gorm@db:5432/gorm volumes: - /host/path/to/config:/config ports: - "8181:8080" depends_on: db: condition: service_healthy labels: - "traefik.http.routers.gowatch.rule=Host(`192.168.178.254`)" - "traefik.http.routers.gowatch.middlewares=test-auth" db: image: postgres:15 environment: - POSTGRES_USER=gorm - POSTGRES_PASSWORD=gorm - POSTGRES_DB=gorm volumes: - /host/path/to/db:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -d $${POSTGRES_DB} -U $${POSTGRES_USER}"] interval: 10s timeout: 5s retries: 5 depends_on: - proxy proxy: image: traefik:v2.9.6 command: --providers.docker labels: - "traefik.http.middlewares.test-auth.basicauth.users=broodjeaap:$$2y$$10$$aUvoh7HNdt5tvf8PYMKaaOyCLD3Uel03JtEIPxFEBklJE62VX4rD6" ports: - "8080:80" volumes: - /var/run/docker.sock:/var/run/docker.sock