Evaluace Docker Compose
Veřejné nasazení Docker Compose zabalí self-hostovanou konzoli VM pro jeden hostitel s KVM. Sestaví se z místního zdrojového kódu, připojí virtualizační prostředky hostitele a frontend vystaví na portu 80.
Spuštění a kontrola
Z adresáře 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 frontendOba služby by měly běžet. Backend se musí připojit k qemu:///system; zdravý
kontejner, který nedosáhne na libvirt, není použitelné nasazení.
Co Compose dělá
- sestaví backend z
../cto-gui-libvirt-backend; - sestaví frontend z
cto-gui/Dockerfile.frontends režimem self-hosted UI zapnutým; - předá
/dev/kvma socket libvirt privilegovanému backendovému kontejneru; - připojí
/var/lib/libvirt/imagespro čtení i zápis; - připojí adresáře se zdrojovými ISO a propagovanými golden-image pouze pro čtení;
- ukládá data backendu do pojmenovaného svazku
cto-data; - restartuje obě služby, dokud nejsou výslovně zastaveny.
Co Compose nedělá
Nenastavuje TLS, produkční poskytovatele identity, vysokou dostupnost,
externí databázi, zálohy mimo hostitele, správce tajemství, odesílání logů,
automatické aktualizace ani plánovač pro více hostitelů. restart: unless-stopped je
politika restartu kontejneru, ne vysoká dostupnost služby.
Aktualizace evaluace
Před přestavbou zaznamenejte aktuální commit a seznam běžících hostů:
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 -dPoté zopakujte kontroly režimu, spuštění ISO, VNC, zastavení, smazání a restartu. Repozitář neslibuje upgrade Compose bez výpadku.
Zastavení bez vymazání stavu
docker compose -f docker-compose.self-hosted.yml downPři běžném zastavení nebo upgradu nepoužívejte --volumes. Pojmenovaný svazek
obsahuje trvalý testovací stav a cleanup journaly používané po restartu.