version: '3.8' services: frontend: build: context: ./frontend dockerfile: dev.Dockerfile container_name: elements-frontend-dev ports: - 3000:80 depends_on: - backend develop: watch: - action: sync path: ./frontend target: /app ignore: - node_modules/ - action: rebuild path: package.json backend: build: context: ./backend dockerfile: dev.Dockerfile container_name: elements-backend-dev ports: - 3001:5102 develop: watch: - action: sync path: ./backend/elements-backend.sln target: /app/ - action: sync path: ./backend/Elements.Backend target: /app/Elements.Backend - action: sync path: ./backend/Elements.Data target: /app/Elements.Data depends_on: database: condition: service_healthy database: image: postgres:latest container_name: elements-database-dev restart: always volumes: - db-data:/var/lib/postgresql/data ports: - 3002:5432 environment: POSTGRES_USER: elements POSTGRES_PASSWORD: elementspass healthcheck: test: ["CMD-SHELL", "pg_isready -U elements"] interval: 10s timeout: 5s retries: 5 volumes: db-data: