45 lines
1.4 KiB
YAML
45 lines
1.4 KiB
YAML
services:
|
|
aios-v2:
|
|
build:
|
|
context: ../../..
|
|
dockerfile: deploy/aios-v2/docker/Dockerfile
|
|
image: aios-v2:V2R1C0-candidate
|
|
init: true
|
|
restart: unless-stopped
|
|
ports:
|
|
- "127.0.0.1:${AIOS_V2_PORT:-18920}:18920"
|
|
environment:
|
|
AIOS_V2_HOST: 0.0.0.0
|
|
AIOS_V2_PORT: 18920
|
|
AIOS_V2_STATE_DIR: /var/lib/aios-v2
|
|
AIOS_OPENCLAW_URL: ${AIOS_OPENCLAW_URL:-}
|
|
AIOS_OPENCLAW_CREDENTIAL_REF: ${AIOS_OPENCLAW_CREDENTIAL_REF:-}
|
|
AIOS_OPENCLAW_SIGNING_MATERIAL_FILE: ${AIOS_OPENCLAW_SIGNING_MATERIAL_FILE:-}
|
|
AIOS_RELEASE_CHANNEL: candidate
|
|
AIOS_RELEASE_VERSION: V2R1C0-candidate
|
|
volumes:
|
|
- aios-v2-state:/var/lib/aios-v2
|
|
# Mount runtime signing material explicitly when OpenClaw is enabled.
|
|
# The host file must be mode 0600; never store it in this repository.
|
|
# - /etc/aios-v2/openclaw-signing-material:/run/secrets/openclaw-signing-material:ro
|
|
read_only: true
|
|
tmpfs:
|
|
- /tmp:rw,noexec,nosuid,nodev,size=64m
|
|
cap_drop:
|
|
- ALL
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
healthcheck:
|
|
test:
|
|
- CMD
|
|
- python3
|
|
- -c
|
|
- "import urllib.request; urllib.request.urlopen('http://127.0.0.1:18920/api/v2/health', timeout=3).read()"
|
|
interval: 15s
|
|
timeout: 5s
|
|
retries: 4
|
|
start_period: 10s
|
|
|
|
volumes:
|
|
aios-v2-state:
|