services: app: build: context: . dockerfile: Dockerfile.dev command: ["air", "-c", ".air.toml"] ports: - "8000:8000" depends_on: db: condition: service_healthy environment: APP_NAME: rentease APP_DEBUG: "true" APP_LOG_LEVEL: debug APP_PORT: 8000 APP_ORIGINS: http://localhost:8000 APP_DATABASE_URL: postgres://rentease:rentease@db:5432/rentease?sslmode=disable APP_ADMIN: admin@example.com APP_ADMIN_SECRET: supersecret APP_API_KEY: dev-api-key APP_SECRET_KEY: dev-secret-key APP_SESSION_SECRET: dev-session-secret APP_STRIPE_SECRET_KEY: "" APP_STRIPE_WEBHOOK_SECRET: "" APP_STRIPE_ACCOUNT_ID: "" APP_SENTRY_DSN: "" volumes: - .:/app - tmp-data:/app/tmp - go-build-cache:/root/.cache/go-build - go-mod-cache:/go/pkg/mod db: image: postgres:17-alpine environment: POSTGRES_DB: rentease POSTGRES_USER: rentease POSTGRES_PASSWORD: rentease ports: - "5432:5432" healthcheck: test: ["CMD-SHELL", "pg_isready -U $$POSTGRES_USER -d $$POSTGRES_DB"] interval: 10s timeout: 5s retries: 5 volumes: - db-data:/var/lib/postgresql/data volumes: db-data: tmp-data: go-build-cache: go-mod-cache: