name: homekeeper services: db: image: postgres:17 restart: unless-stopped environment: POSTGRES_DB: homestead POSTGRES_USER: homestead POSTGRES_PASSWORD: homestead volumes: - ./pg_data:/var/lib/postgresql/data healthcheck: test: ["CMD-SHELL", "pg_isready -U homestead -d homestead"] interval: 5s timeout: 5s retries: 10 api: build: ./api depends_on: db: condition: service_healthy environment: DB_HOST: db DB_PORT: 5432 DB_NAME: homestead DB_USER: homestead DB_PASSWORD: homestead ROOT_PATH: /api INITIAL_USERS: "homestead:homestead" restart: unless-stopped nginx: image: nginx:alpine ports: - "80:80" volumes: - ./nginx.conf:/etc/nginx/nginx.conf:ro - ./www:/usr/share/nginx/html:ro depends_on: - beekeeper - api restart: unless-stopped listkeeper: build: ./listkeeper depends_on: api: condition: service_started environment: API_URL: http://api:8000 API_USER: homestead API_PASS: homestead LOG_DIR: /logs volumes: - ./listkeeper/logs:/logs restart: unless-stopped beekeeper: build: ./beekeeper depends_on: api: condition: service_started environment: API_URL: http://api:8000 API_USER: homestead API_PASS: homestead LOG_DIR: /logs volumes: - ./beekeeper/logs:/logs restart: unless-stopped