Skip to Content
Self HostingKonfiguracija

Konfiguracija

Javna self-hosted konfiguracija je datoteka v repozitoriju cto-gui/docker-compose.self-hosted.yml plus nastavitve, ki jih prebere cto-gui-libvirt-backend. Ta stran opisuje to evalvacijsko površino. Ne izmišljuje splošne pogodbe okolja Enterprise.

Pogodba Compose

NastavitevVrednost v repozitorijuNamen
SELF_HOSTEDtrueIzbira načina local-console in izklop poti, odvisnih od oblaka
KVM_URIqemu:///systemPovezava z daemonom libvirt sistemskega gostitelja
TEST_STORAGE_DIR/app/data/testsHranjenje stanja testov, lockov in cleanup journalov v cto-data
SOURCE_ISO_DIRPot source-ISO na gostiteljuRazrešitev read-only izvornih artefaktov na isti absolutni poti, ki jo vidi libvirt gostitelja
SOURCE_GOLDEN_IMAGE_DIRPot promoted-image na gostiteljuRazrešitev nespremenljivih nameščenih vhodov QCOW2 na isti absolutni poti, ki jo vidi libvirt gostitelja
TRUST_PROXY_HEADERStrue v datoteki ComposeDovoljenje informacij o odjemalcu iz proxy po trusted-proxy rules backenda

Backend privzeto tudi shranjuje uploade ISO v /var/lib/libvirt/images in omeji uploade na 10 GB, razen če nastavitev backenda namerno spremenite.

Prepisi poti gostitelja

Dve spremenljivki okolja lupine vplivata na bind mounte Compose:

export SOURCE_ISO_HOST_DIR=/srv/openfactory/source-isos export SOURCE_GOLDEN_IMAGE_HOST_DIR=/srv/openfactory/golden-images docker compose -f docker-compose.self-hosted.yml up --build -d

Najprej ustvarite te mape in nastavite dovoljenja. Pot v kontejnerju ostane enaka poti na gostitelju, ker datoteke slik za QEMU odpira libvirt gostitelja, ne kontejner. Pot, ki obstaja samo znotraj kontejnerja, ob zagonu gosta spodleti.

Trajni in netrajni podatki

LokacijaLastništvo in življenjski cikel
/var/lib/libvirt/imagesNaloženi ISO, diski gostov in overlayi, ki jih upravlja gostitelj
Mapa source ISOUpravlja operater, montirana read-only
Mapa golden-imageNespremenljivi vhodi, ki jih promovira operater, montirani read-only
Named volume cto-dataStanje backenda, vključno z zapisi testov in cleanup journali
Datotečni sistem kontejnerja zunaj mountovEnkraten; ne zanašajte se nanj pri obnovi

Varnostno kopijo ali posnetek naredite šele po določitvi, kateri viri morajo ostati. Datoteka Compose ne načrtuje varnostnih kopij.

Izpostavljenost in nastavitve proxy

Frontend preslika vrata 80 gostitelja. TRUST_PROXY_HEADERS ne zagotavlja TLS niti avtentikacije; spremeni le to, kako backend sprejema posredovane metapodatke povezave iz eksplicitno zaupanja vrednih območij proxy. Če dodate reverse proxy, ozko nastavite njegovo omrežno pot in trusted proxies ter preverite, da ponarejeni forwarding headerji prihajajo zavrnjeni od nezaupanja vrednih peerov.

Evalvacijske konzole ne postavljajte neposredno na javni internet. Produkcijska identiteta, TLS, secrets in authorization design so ločena odločitev o namestitvi.

Preverite vsako spremembo

Po spremembi poti ali nastavitev:

  1. znova ustvarite prizadeti kontejner;
  2. preverite self_hosted: true prek mode endpoint;
  3. naložite in zaženite enkratni ISO;
  4. ustavite in izbrišite gosta;
  5. znova zaženite stack in potrdite, da stanje cleanup in inventar preživita.