Skip to Content
Self HostingConfigurare

Configurare

Configurația publică self-hosted este fișierul din repo cto-gui/docker-compose.self-hosted.yml plus setările citite de cto-gui-libvirt-backend. Această pagină documentează această suprafață de evaluare. Nu inventează un contract generic de mediu Enterprise.

Contract Compose

SetareValoare în repoScop
SELF_HOSTEDtrueSelectarea modului local-console și dezactivarea rutelor dependente de cloud
KVM_URIqemu:///systemConectare la daemonul libvirt al sistemului gazdă
TEST_STORAGE_DIR/app/data/testsPăstrarea stării testelor, lock-urilor și jurnalelor cleanup în cto-data
SOURCE_ISO_DIRCale source-ISO pe gazdăRezolvarea artefactelor sursă read-only la aceeași cale absolută vizibilă pentru libvirt pe gazdă
SOURCE_GOLDEN_IMAGE_DIRCale promoted-image pe gazdăRezolvarea intrărilor QCOW2 instalate immutable la aceeași cale absolută vizibilă pentru libvirt pe gazdă
TRUST_PROXY_HEADERStrue în fișierul ComposePermiterea informațiilor despre client din proxy conform trusted-proxy rules ale backendului

Backendul trimite implicit uploadurile ISO către /var/lib/libvirt/images și limitează uploadurile la 10 GB, dacă setarea backendului nu este schimbată deliberat.

Suprascrieri ale căilor pe gazdă

Două variabile de mediu shell influențează bind mount-urile 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

Creați mai întâi aceste directoare și setați permisiunile. Calea din container rămâne identică cu calea de pe gazdă, deoarece fișierele de imagine pentru QEMU sunt deschise de libvirt pe gazdă, nu de container. O cale care există doar în interiorul containerului va eșua la lansarea oaspetelui.

Date persistente și nepersistente

LocațieProprietate și ciclu de viață
/var/lib/libvirt/imagesISO-uri încărcate, discuri oaspeți și overlay-uri gestionate de gazdă
Director source ISOGestionat de operator, montat read-only
Director golden-imageIntrări immutable promovate de operator, montate read-only
Named volume cto-dataStare backend, inclusiv înregistrări de teste și jurnale cleanup
Sistem de fișiere al containerului în afara mount-urilorDe unică folosință; nu vă bazați pe el pentru recuperare

Faceți backup sau snapshot doar după ce identificați ce resurse trebuie păstrate. Fișierul Compose nu programează backupuri.

Expunere și setări proxy

Frontend-ul mapează portul 80 al gazdei. TRUST_PROXY_HEADERS nu oferă TLS sau autentificare; schimbă doar modul în care backendul acceptă metadatele de conexiune redirecționate din intervale proxy explicit de încredere. Dacă adăugați un reverse proxy, configurați îngust calea sa de rețea și trusted proxies și verificați că antetele de forwarding falsificate sunt respinse de la peeri neîncredere.

Nu expuneți consola de evaluare direct pe internetul public. Identitatea de producție, TLS, secrets și authorization design sunt o decizie separată de implementare.

Validați fiecare modificare

După schimbarea căilor sau setărilor:

  1. recreați containerul afectat;
  2. verificați self_hosted: true prin mode endpoint;
  3. încărcați și lansați un ISO de unică folosință;
  4. opriți și ștergeți oaspetele;
  5. reporniți stack-ul și confirmați că starea cleanup și inventarul au supraviețuit.