services: frontend-build: build: context: ./frontend dockerfile: Dockerfile.frontend container_name: cutt-frontend environment: VITE_BASE_URL: ${VITE_BASE_URL} volumes: - dist:/app/dist backend: build: . container_name: cutt-backend depends_on: frontend-build: condition: service_completed_successfully db: condition: service_healthy restart: true restart: unless-stopped env_file: - .env volumes: - dist:/app/dist ports: - 8000:8000 db: image: postgres:18 container_name: cutt-db restart: unless-stopped volumes: - db:/var/lib/postgresql environment: - POSTGRES_DB=${DB_NAME} - POSTGRES_USER=${DB_USER} - POSTGRES_PASSWORD=${DB_PASS} healthcheck: test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"] interval: 10s retries: 5 start_period: 30s timeout: 10s volumes: dist: db: