Virtool uses a repository-scoped development service to run isolated Docker Compose environments for Git worktrees. Install Docker Engine, Node 24, pnpm, and Worktrunk, then run:
vtd up
vtd ui
vtd list
vtd stop
vtd removeLifecycle commands return immediately. Follow progress in the management UI at https://dev.localhost:9443. See the development guide for data safety, workflow scheduling, and troubleshooting.
Every image ships from its app's Dockerfile. A release publishes only the
images whose app version changed; see Continuous integration.
| Target | Published image |
|---|---|
web |
ghcr.io/virtool/web |
internal |
ghcr.io/virtool/internal |
create-sample |
ghcr.io/virtool/create-sample |
create-subtraction |
ghcr.io/virtool/create-subtraction |
pathoscope |
ghcr.io/virtool/pathoscope |
nuvs |
ghcr.io/virtool/nuvs |
Build one image locally by naming its Bake target:
docker buildx bake -f packages/image-build/docker-bake.hcl pathoscopeThe web build uploads its source maps to Sentry only when SENTRY_AUTH_TOKEN
is set. SENTRY_RELEASE names the Sentry release, because the build context
has no Git history. The release job sets both.