Skip to Content
Self HostingEvaluace Docker Compose

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 frontend

Oba 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.frontend s režimem self-hosted UI zapnutým;
  • předá /dev/kvm a socket libvirt privilegovanému backendovému kontejneru;
  • připojí /var/lib/libvirt/images pro č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 -d

Poté 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 down

Při běžném zastavení nebo upgradu nepoužívejte --volumes. Pojmenovaný svazek obsahuje trvalý testovací stav a cleanup journaly používané po restartu.