Files

21 lines
1.1 KiB
Markdown
Raw Permalink Normal View History

# Preview Worker Deployment
The web application only enqueues persistent preview jobs. A separate deployment must run the same application with:
```text
EASYCODE_PREVIEW_EXECUTION_MODE=persistent
EASYCODE_PREVIEW_WORKER_ENABLED=true
EASYCODE_PREVIEW_WORKER_ROOT=/data/preview-worker
EASYCODE_PREVIEW_DOCKER_IMAGE=easycode/preview-worker:v1
```
Build the runtime image:
```bash
docker build -t easycode/preview-worker:v1 deploy/preview-worker
```
The web and Worker deployments must share the control database and the configured Worker root volume so the authenticated screenshot endpoint can read `output/screenshot.png`. Only the Worker deployment needs Docker access. The web deployment must use `EASYCODE_PREVIEW_EXECUTION_MODE=persistent` and keep `EASYCODE_PREVIEW_WORKER_ENABLED=false`. Local development defaults to `host` mode and does not require Docker.
The runtime publishes one constrained container port, waits for `/output/ready`, stores bounded logs and a Chromium screenshot, and is stopped by the durable Job TTL. Docker failures remain explicit; there is no host-process fallback.