Оцінка Docker Compose
Public Docker Compose deployment packages self-hosted VM console for single KVM host. It builds from local source, mounts host virtualization resources, and exposes frontend on port 80.
Start and inspect
From cto-gui:
docker compose -f docker-compose.self-hosted.yml up --build -d
docker compose -f docker-compose.self-hosted.yml ps
docker compose -f docker-compose.self-hosted.yml logs --tail=200 backend frontendBoth services should be running. Backend must connect to qemu:///system; healthy container that cannot reach libvirt is not usable deployment.
What Compose does
- builds backend from
../cto-gui-libvirt-backend; - builds frontend from
cto-gui/Dockerfile.frontendwith self-hosted UI mode enabled; - passes
/dev/kvmand libvirt socket to privileged backend container; - mounts
/var/lib/libvirt/imagesread-write; - mounts source ISO and promoted golden-image directories read-only;
- stores backend data in
cto-datanamed volume; - restarts both services unless explicitly stopped.
What Compose does not do
It does not configure TLS, production identity provider, high availability, external database, off-host backups, secrets manager, log shipping, automatic updates, or multi-host scheduler. restart: unless-stopped is container restart policy, not service high availability.
Updating an evaluation
Record current commit and inventory running guests before rebuilding:
git rev-parse HEAD
docker compose -f docker-compose.self-hosted.yml ps
virsh -c qemu:///system list --all
docker compose -f docker-compose.self-hosted.yml build --pull
docker compose -f docker-compose.self-hosted.yml up -dAfterward repeat mode, ISO launch, VNC, stop, delete, and restart checks. Repository does not promise zero-downtime Compose upgrade.
Stop without erasing state
docker compose -f docker-compose.self-hosted.yml downAvoid --volumes during routine stop or upgrade. Named volume contains durable test state and cleanup journals used after restart.