91 lines
2.7 KiB
YAML
91 lines
2.7 KiB
YAML
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: ${RUN_REPO_DIR:-./run}
|
|
dockerfile: 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:
|