Single-container deploy
Use the single-container deployment when you want the smallest self-hosted Qodex setup. You provide Postgres, secrets, an LLM key, and a persistent/data volume. The container runs the web server, UI, scheduler, agent runner, Playwright, Chromium, and bundled skills.
Prerequisites
- Docker, Podman, or another OCI container runtime.
- Postgres 16 or 17 reachable from the container.
- An OpenAI API key for the platform default model.
- A 32-character or longer
QODECLAW_SECRET_KEY. - A random
JWT_SECRET. - A persistent volume mounted at
/data.
1. Pull the image
2. Set environment variables
At minimum, the container needs:3. Mount storage
Mount/data so screenshots, videos, DOM snapshots, logs, and attachments survive container restarts.
/project if you want the agent to inspect local code for context.
4. Start Qodex
5. Verify the server
REDIS_URL, Qodex runs the scheduler and agent runner in the same container. That is fine for a small single-container deploy.
Next steps
Docker Compose
Add Postgres in the same local stack.
Storage backends
Switch artifacts from local disk to S3.
Environment variables
Review every setting Qodex reads at boot.
Secret management
Understand the encryption key before production.