69 lines
2.3 KiB
YAML
69 lines
2.3 KiB
YAML
services:
|
|
agentci:
|
|
build:
|
|
context: .
|
|
args:
|
|
CODEX_VERSION: ${CODEX_VERSION:-0.144.6}
|
|
CODEGRAPH_VERSION: ${CODEGRAPH_VERSION:-1.3.1}
|
|
TEA_VERSION: ${TEA_VERSION:-0.14.2}
|
|
restart: unless-stopped
|
|
# Codex applies its own bwrap sandbox inside this otherwise unprivileged container.
|
|
cap_add:
|
|
- SYS_ADMIN
|
|
- SYS_CHROOT
|
|
- SETUID
|
|
- SETGID
|
|
- SYS_PTRACE
|
|
- NET_ADMIN
|
|
- NET_RAW
|
|
security_opt:
|
|
- seccomp=unconfined
|
|
- apparmor=unconfined
|
|
# Docker's masked /proc paths prevent Codex's user namespace from mounting fresh procfs.
|
|
- systempaths=unconfined
|
|
environment:
|
|
AGENTCI_GITEA_URL: ${AGENTCI_GITEA_URL:-http://gitea:3000}
|
|
AGENTCI_BOT_USERNAME: ${AGENTCI_BOT_USERNAME:-agentci}
|
|
AGENTCI_BOT_NAME: ${AGENTCI_BOT_NAME:-Agent CI}
|
|
AGENTCI_BOT_EMAIL: ${AGENTCI_BOT_EMAIL:-agentci@localhost}
|
|
AGENTCI_PLAN_MODEL: ${AGENTCI_PLAN_MODEL:-gpt-5.6-sol}
|
|
AGENTCI_PLAN_REASONING: ${AGENTCI_PLAN_REASONING:-medium}
|
|
AGENTCI_IMPLEMENT_MODEL: ${AGENTCI_IMPLEMENT_MODEL:-gpt-5.6-sol}
|
|
AGENTCI_IMPLEMENT_REASONING: ${AGENTCI_IMPLEMENT_REASONING:-high}
|
|
AGENTCI_RESEARCH_MODEL: ${AGENTCI_RESEARCH_MODEL:-gpt-5.6-luna}
|
|
AGENTCI_RESEARCH_REASONING: ${AGENTCI_RESEARCH_REASONING:-high}
|
|
AGENTCI_CONTEXT7_API_KEY: ${AGENTCI_CONTEXT7_API_KEY:-}
|
|
AGENTCI_PLAN_REVIEW_ROUNDS: ${AGENTCI_PLAN_REVIEW_ROUNDS:-4}
|
|
AGENTCI_IMPLEMENT_REVIEW_ROUNDS: ${AGENTCI_IMPLEMENT_REVIEW_ROUNDS:-3}
|
|
AGENTCI_TURN_TIMEOUT_SECONDS: ${AGENTCI_TURN_TIMEOUT_SECONDS:-3600}
|
|
AGENTCI_INSTALL_SCRIPT_TIMEOUT_SECONDS: ${AGENTCI_INSTALL_SCRIPT_TIMEOUT_SECONDS:-900}
|
|
AGENTCI_INSTALL_SCRIPTS: ${AGENTCI_INSTALL_SCRIPTS:-}
|
|
AGENTCI_PYTHON_VERSION: ${AGENTCI_PYTHON_VERSION:-3.13}
|
|
AGENTCI_DOTNET_CHANNEL: ${AGENTCI_DOTNET_CHANNEL:-10.0}
|
|
secrets:
|
|
- gitea_token
|
|
- webhook_secret
|
|
volumes:
|
|
- agentci_data:/var/lib/agentci
|
|
- codex_home:/var/lib/codex
|
|
- ./install-scripts:/etc/agentci/install-scripts:ro
|
|
expose:
|
|
- "8080"
|
|
networks:
|
|
- gitea
|
|
|
|
secrets:
|
|
gitea_token:
|
|
file: ./secrets/gitea_token
|
|
webhook_secret:
|
|
file: ./secrets/webhook_secret
|
|
|
|
volumes:
|
|
agentci_data:
|
|
codex_home:
|
|
|
|
networks:
|
|
gitea:
|
|
external: true
|
|
name: ${GITEA_NETWORK:-gitea}
|