services: frontend: build: context: . dockerfile: frontend/Dockerfile.dev volumes: - ./frontend:/app - /app/node_modules environment: VITE_API_URL: ${VITE_API_URL} ports: - "5173:5173" depends_on: - backend backend: build: context: . dockerfile: backend/Dockerfile volumes: - ./backend:/code command: > sh -c "fastapi run src/main.py --reload --port 8000" environment: ORIGINS: ${ORIGINS} DB_HOST: database DB_USER: ${DB_USER} DB_PASS: ${DB_PASS} DB_NAME: ${DB_NAME} SECRET_KEY: ${SECRET_KEY} VITE_API_URL: ${VITE_API_URL} KEYCLOAK_SERVER: ${KEYCLOAK_SERVER} KEYCLOAK_REALM: ${KEYCLOAK_REALM} KEYCLOAK_CLIENT_ID: ${KEYCLOAK_CLIENT_ID} KEYCLOAK_CLIENT_SECRET: ${KEYCLOAK_CLIENT_SECRET} KEYCLOAK_REDIRECT_URI: ${KEYCLOAK_REDIRECT_URI} DEBUG: ${DEBUG} MAX_AGE: ${MAX_AGE} ports: - "8000:8000" depends_on: - database database: image: postgres restart: always shm_size: 128mb volumes: - db:/var/lib/postgresql environment: POSTGRES_USER: ${DB_USER} POSTGRES_PASSWORD: ${DB_PASS} POSTGRES_DB: ${DB_NAME} ports: - 5432:5432 volumes: db: