services: platform: build: context: . dockerfile: platform/Dockerfile environment: PLATFORM_ADDR: ":8080" # Metadata backend: # - file: default Docker deployment, persisted in the platform-data volume. # - mysql: change PLATFORM_STORAGE_BACKEND from file to mysql, uncomment PLATFORM_MYSQL_DSN, # then uncomment the mysql service and depends_on block below. PLATFORM_STORAGE_BACKEND: file # PLATFORM_MYSQL_DSN: platform:platform@tcp(mysql:3306)/platform?parseTime=true PLATFORM_DATA_DIR: /data/platform PLATFORM_METADATA_PATH: /data/platform/metadata.json # Log bodies are separate from metadata. Keep file for local Docker. # MySQL should store metadata/cursors/indexes, not one row per log line. PLATFORM_LOG_BODY_BACKEND: file PLATFORM_LOG_DIR: /data/platform/logs ports: - "8080:8080" volumes: - platform-data:/data/platform healthcheck: test: ["CMD", "wget", "-qO-", "http://127.0.0.1:8080/healthz"] interval: 10s timeout: 3s retries: 12 # To run platform metadata on MySQL, uncomment this dependency and the mysql service below. # Also change PLATFORM_STORAGE_BACKEND above from file to mysql. # depends_on: # mysql: # condition: service_healthy # Optional local MySQL metadata database. # Uncomment this block plus PLATFORM_STORAGE_BACKEND/PLATFORM_MYSQL_DSN above. # mysql: # image: mysql:8.4 # environment: # MYSQL_DATABASE: platform # MYSQL_USER: platform # MYSQL_PASSWORD: platform # MYSQL_ROOT_PASSWORD: platform-root # ports: # - "3306:3306" # volumes: # - mysql-data:/var/lib/mysql # healthcheck: # test: ["CMD", "mysqladmin", "ping", "-h", "127.0.0.1", "-uplatform", "-pplatform"] # interval: 10s # timeout: 5s # retries: 20 run: build: context: . dockerfile: run/Dockerfile depends_on: platform: condition: service_healthy environment: RUN_MODE: worker RUN_PLATFORM_URL: http://platform:8080 RUN_ENDPOINT_ID: run-docker RUN_DISPLAY_NAME: Docker Run RUN_VERSION: 0.1.0 RUN_REGISTRATION_TOKEN: local-registration RUN_WORKSPACE_ROOT: /data/run/workspace RUN_SPOOL_ROOT: /data/run/spool RUN_MAX_JOBS: "1" RUN_HEARTBEAT_INTERVAL_MS: "15000" RUN_POLL_INTERVAL_MS: "2000" RUN_RETRY_BACKOFF_MS: "1000" volumes: - run-data:/data/run platform-web: build: context: . dockerfile: platform_web/Dockerfile depends_on: platform: condition: service_healthy ports: - "5173:80" volumes: platform-data: run-data: # mysql-data: