# OpenHands Agent Canvas Stack Deploy automatico di **OpenHands Agent Canvas** con runtime Docker (Docker-in-Docker / DooD tramite socket Docker host) gestito via Gitea Actions e Komodo Core su `server-tsj08`. ## 🚀 Architettura - **Immagine Base:** `ghcr.io/openhands/agent-canvas:latest` - **Runtime Isolato per Conversazione:** `OH_CONVERSATION_RUNTIME=docker` con immagine `ghcr.io/openhands/agent-server:latest-python` - **Socket Docker:** `/var/run/docker.sock` montato nel container per consentire lo spawn di runtime isolati per ciascun task/conversazione - **Rete:** `scoobydoo` (external network di Komodo) - **Porta Host:** `18000` (mappata su container `8000`) - **Web UI URL:** `http://:18000/` o `http://:18000/canvas` ## 🔄 CI/CD & Deploy Automatico Ad ogni push sui branch `main` o `master`: 1. Il workflow `.gitea/workflows/deploy.yml` viene attivato sul runner `hp`. 2. Esegue `scripts/deploy.py`, che dialoga con Komodo Core API (`http://localhost:9120`). 3. Aggiorna la configurazione dello stack `openhands-agent-canvas` e avvia il deploy del container. 4. Esegue un test di raggiungibilità HTTP sulla porta `18000`. ## 🔐 Configurazione Segreti I seguenti segreti sono configurati nei Secrets del repository Gitea: - `KOMODO_HOST` - `KOMODO_API_KEY` - `KOMODO_API_SECRET`