90 lines
3.5 KiB
YAML
90 lines
3.5 KiB
YAML
services:
|
|
spiffworkflow-frontend:
|
|
container_name: spiffworkflow-frontend
|
|
image: ghcr.io/sartography/spiffworkflow-frontend:latest
|
|
depends_on:
|
|
spiffworkflow-backend:
|
|
condition: service_healthy
|
|
environment:
|
|
APPLICATION_ROOT: "/"
|
|
PORT0: "${SPIFFWORKFLOW_FRONTEND_PORT:-8001}"
|
|
ports:
|
|
- "${SPIFFWORKFLOW_FRONTEND_PORT:-8001}:${SPIFFWORKFLOW_FRONTEND_PORT:-8001}/tcp"
|
|
|
|
spiffworkflow-backend:
|
|
container_name: spiffworkflow-backend
|
|
image: ghcr.io/sartography/spiffworkflow-backend:latest
|
|
depends_on:
|
|
spiffworkflow-db:
|
|
condition: service_healthy
|
|
environment:
|
|
SPIFFWORKFLOW_BACKEND_APPLICATION_ROOT: "/"
|
|
SPIFFWORKFLOW_BACKEND_ENV: "local_development"
|
|
FLASK_DEBUG: "0"
|
|
FLASK_SESSION_SECRET_KEY: "${FLASK_SESSION_SECRET_KEY:-super_secret_key}"
|
|
# WARNING: Frontend is a static site which assumes frontend port - 1 on localhost.
|
|
SPIFFWORKFLOW_BACKEND_URL: "http://localhost:${SPIFF_BACKEND_PORT:-8000}"
|
|
|
|
SPIFFWORKFLOW_BACKEND_BPMN_SPEC_ABSOLUTE_DIR: "/app/process_models"
|
|
SPIFFWORKFLOW_BACKEND_CONNECTOR_PROXY_URL: "http://spiffworkflow-connector:8004"
|
|
SPIFFWORKFLOW_BACKEND_DATABASE_URI: "mysql+mysqlconnector://root:${SPIFF_MYSQL_PASS:-my-secret-pw}@spiffworkflow-db:${SPIFF_MYSQL_PORT:-8003}/spiffworkflow_backend_development"
|
|
SPIFFWORKFLOW_BACKEND_LOAD_FIXTURE_DATA: "false"
|
|
SPIFFWORKFLOW_BACKEND_OPEN_ID_CLIENT_ID: "spiffworkflow-backend"
|
|
SPIFFWORKFLOW_BACKEND_OPEN_ID_CLIENT_SECRET_KEY: "my_open_id_secret_key"
|
|
SPIFFWORKFLOW_BACKEND_OPEN_ID_SERVER_URL: "http://localhost:${SPIFF_BACKEND_PORT:-8000}/openid"
|
|
SPIFFWORKFLOW_BACKEND_PERMISSIONS_FILE_NAME: "example.yml"
|
|
SPIFFWORKFLOW_BACKEND_PORT: "${SPIFF_BACKEND_PORT:-8000}"
|
|
SPIFFWORKFLOW_BACKEND_RUN_BACKGROUND_SCHEDULER: "true"
|
|
SPIFFWORKFLOW_BACKEND_UPGRADE_DB: "true"
|
|
SPIFFWORKFLOW_BACKEND_URL_FOR_FRONTEND: "http://localhost:${SPIFFWORKFLOW_FRONTEND_PORT:-8001}"
|
|
ports:
|
|
- "${SPIFF_BACKEND_PORT:-8000}:${SPIFF_BACKEND_PORT:-8000}/tcp"
|
|
volumes:
|
|
- ./process_models:/app/process_models
|
|
- ./log:/app/log
|
|
healthcheck:
|
|
test: "curl localhost:${SPIFF_BACKEND_PORT:-8000}/v1.0/status --fail"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 20
|
|
|
|
spiffworkflow-connector:
|
|
container_name: spiffworkflow-connector
|
|
image: ghcr.io/sartography/connector-proxy-demo:latest
|
|
environment:
|
|
FLASK_ENV: "${FLASK_ENV:-development}"
|
|
FLASK_DEBUG: "0"
|
|
FLASK_SESSION_SECRET_KEY: "${FLASK_SESSION_SECRET_KEY:-super_secret_key}"
|
|
CONNECTOR_PROXY_PORT: "${SPIFF_CONNECTOR_PORT:-8004}"
|
|
ports:
|
|
- "${SPIFF_CONNECTOR_PORT:-8004}:${SPIFF_CONNECTOR_PORT:-8004}/tcp"
|
|
healthcheck:
|
|
test: "curl localhost:${SPIFF_CONNECTOR_PORT:-8004}/liveness --fail"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 20
|
|
|
|
spiffworkflow-db:
|
|
container_name: spiffworkflow-db
|
|
image: mysql:8.0.29
|
|
platform: linux/amd64
|
|
cap_add:
|
|
- SYS_NICE
|
|
restart: "no"
|
|
environment:
|
|
MYSQL_DATABASE: "spiffworkflow_backend_development"
|
|
MYSQL_ROOT_PASSWORD: "${SPIFF_MYSQL_PASS:-my-secret-pw}"
|
|
MYSQL_TCP_PORT: "${SPIFF_MYSQL_PORT:-8003}"
|
|
ports:
|
|
- "${SPIFF_MYSQL_PORT:-8003}:${SPIFF_MYSQL_PORT:-8003}/tcp"
|
|
healthcheck:
|
|
test: "mysql --user=root --password=${SPIFF_MYSQL_PASS:-my-secret-pw} -e 'select 1' spiffworkflow_backend_development"
|
|
interval: 10s
|
|
timeout: 5s
|
|
retries: 10
|
|
|
|
|
|
volumes:
|
|
spiffworkflow_backend:
|
|
driver: local
|