35 lines
1.4 KiB
YAML
35 lines
1.4 KiB
YAML
# Prod overlay — load explicitly:
|
|||
|
|
# docker compose -f docker-compose.yml -f docker-compose.prod.yml --env-file .env.prod up -d --build
|
||
|
|
#
|
||
|
|
# No ports: (prod is expected to sit behind a reverse proxy / firewalled
|
||
|
|
# network) and no depends_on: — on a split deployment (control-api on one
|
||
|
|
# host, prober/validator-agent on others) control-api's profile is not even
|
||
|
|
# part of that host's compose invocation, and depends_on on an inactive
|
||
|
|
# profile is a hard `docker compose config` error. restart: unless-stopped
|
||
|
|
# is the substitute safety net for the startup-order race (see RUN.txt /
|
||
|
|
# README): prober and validator-agent exit on a failed one-shot
|
||
|
|
# registration, so they get restarted until control-api is reachable.
|
||
|
|
|
||
|
|
services:
|
||
|
|
control-api:
|
||
|
|
restart: unless-stopped
|
||
|
|
volumes:
|
||
|
|
- ${CONTROL_API_CONFIG_PATH:-/etc/cloud-ip-validator/UNCONFIGURED-control-api.yaml}:/etc/cloud-ip-validator/control-api.yaml:ro
|
||
|
|
environment:
|
||
|
|
OS_AUTH_URL: "${OS_AUTH_URL:-}"
|
||
|
|
OS_PROJECT_ID: "${OS_PROJECT_ID:-}"
|
||
|
|
OS_REGION_NAME: "${OS_REGION_NAME:-}"
|
||
|
|
OS_INTERFACE: "${OS_INTERFACE:-}"
|
||
|
|
OS_TOKEN: "${OS_TOKEN:-}"
|
||
|
|
OS_USERNAME: "${OS_USERNAME:-}"
|
||
|
|
OS_USER_DOMAIN_NAME: "${OS_USER_DOMAIN_NAME:-}"
|
||
|
|
OS_PASSWORD: "${OS_PASSWORD:-}"
|
||
|
|
|
||
|
|
admin-dashboard:
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
prober:
|
||
|
|
restart: unless-stopped
|
||
|
|
|
||
|
|
validator-agent:
|
||
|
|
restart: unless-stopped
|