version: "3.9" # Local development environment for Minstrel. # Not used by CI — integration tests run against this compose stack manually: # docker compose up -d postgres # MINSTREL_TEST_DATABASE_URL=postgres://minstrel:minstrel@localhost:5432/minstrel?sslmode=disable \ # go test ./... # # Full stack (server + db): # docker compose up --build services: postgres: image: postgres:16-alpine environment: POSTGRES_USER: minstrel POSTGRES_PASSWORD: minstrel POSTGRES_DB: minstrel ports: - "5432:5432" volumes: - minstrel-pgdata:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U minstrel -d minstrel"] interval: 5s timeout: 5s retries: 10 minstrel: build: . depends_on: postgres: condition: service_healthy environment: SMARTMUSIC_DATABASE_URL: postgres://minstrel:minstrel@postgres:5432/minstrel?sslmode=disable SMARTMUSIC_LOG_FORMAT: text ports: - "4533:4533" volumes: minstrel-pgdata: