Files
compose-anything/apps/opensandbox/docker-compose.yaml
2026-02-23 17:41:05 +08:00

49 lines
1.5 KiB
YAML

# OpenSandbox Docker Compose Configuration
# A general-purpose sandbox platform for AI applications
# Provides multi-language SDKs, unified sandbox APIs, and Docker/Kubernetes runtimes
x-defaults: &defaults
restart: unless-stopped
logging:
driver: json-file
options:
max-size: 100m
max-file: '3'
services:
opensandbox-server:
<<: *defaults
image: ${GLOBAL_REGISTRY:-}opensandbox/server:${OPENSANDBOX_SERVER_VERSION:-v1.0.5}
ports:
- '${OPENSANDBOX_SERVER_PORT_OVERRIDE:-8080}:8080'
volumes:
# Mount Docker socket to enable sandbox creation
- /var/run/docker.sock:/var/run/docker.sock
# Configuration file
- ./config.toml:/etc/opensandbox/config.toml:ro
# Data persistence
- opensandbox_data:/app/data
environment:
- TZ=${TZ:-UTC}
# Server configuration
- SANDBOX_CONFIG_PATH=/etc/opensandbox/config.toml
# Docker runtime settings (override config.toml via env vars if needed)
- DOCKER_HOST=${DOCKER_HOST:-unix:///var/run/docker.sock}
healthcheck:
test: [CMD, curl, -f, 'http://localhost:8080/health']
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
deploy:
resources:
limits:
cpus: ${OPENSANDBOX_SERVER_CPU_LIMIT:-2.0}
memory: ${OPENSANDBOX_SERVER_MEMORY_LIMIT:-2G}
reservations:
cpus: ${OPENSANDBOX_SERVER_CPU_RESERVATION:-1.0}
memory: ${OPENSANDBOX_SERVER_MEMORY_RESERVATION:-1G}
volumes:
opensandbox_data: