name: demo-godo-tys-fastapi-rust services: river-api: build: context: . dockerfile: docker/fastapi-rust-river/Dockerfile image: demo-godo-tys/fastapi-rust-river:latest container_name: demo-fastapi-rust-river-api environment: RIVER2D_BIN: /usr/local/bin/river2d_core PYTHONUNBUFFERED: "1" ports: - "${API_PORT:-8000}:8000" healthcheck: test: - CMD-SHELL - >- python -c "import urllib.request; urllib.request.urlopen('http://127.0.0.1:8000/health', timeout=3).read()" interval: 10s timeout: 5s retries: 6 start_period: 15s restart: unless-stopped demo-site: image: nginx:alpine container_name: demo-fastapi-rust-river-site depends_on: river-api: condition: service_healthy ports: - "${SITE_PORT:-8080}:80" volumes: - ./dist:/usr/share/nginx/html:ro - ./docker/nginx/fastapi-rust-demo.conf:/etc/nginx/conf.d/default.conf:ro restart: unless-stopped