services: claude-hook: build: . container_name: claude-hook restart: unless-stopped # No ports/domains published: this service is only reachable from other # containers on the shared network below (i.e. Gitea calls it directly # by container name). Nothing on the public internet can reach it. environment: - GITEA_URL # e.g. http://:3000 - GITEA_TOKEN # access token for the "claude" Gitea user - CLAUDE_CODE_OAUTH_TOKEN - OWNER_LOGIN # e.g. selimaj-dev — only this user's comments trigger a run - WEBHOOK_SECRET=${WEBHOOK_SECRET:-} - CLAUDE_MODEL=${CLAUDE_MODEL:-sonnet} - CLAUDE_MAX_TURNS=${CLAUDE_MAX_TURNS:-25} - JOB_TIMEOUT_MS=${JOB_TIMEOUT_MS:-1200000} - LOG_LEVEL=${LOG_LEVEL:-info} - PORT=3000 networks: - gitea-network networks: gitea-network: external: true # Replace with your actual Docker network name/id, e.g. the one shown # by `docker network ls` for the network Gitea's container is on # (find it with: docker inspect --format '{{json .NetworkSettings.Networks}}'). name: bqiohrkncfda0as0f7lrdk7j