Skip to Content
Self HostingConfiguração

Configuração

A configuração self-hosted pública é o cto-gui/docker-compose.self-hosted.yml versionado mais configurações lidas pelo cto-gui-libvirt-backend. Esta página documenta essa superfície de avaliação. Não inventa contrato genérico de ambiente Enterprise.

Contrato Compose

ConfiguraçãoValor versionadoPropósito
SELF_HOSTEDtrueSeleciona mode console local e desabilita rotas dependentes de cloud
KVM_URIqemu:///systemConecta ao daemon libvirt system do host
TEST_STORAGE_DIR/app/data/testsRetém estado de teste, locks e journals de cleanup em cto-data
SOURCE_ISO_DIRPath de ISO de origem no hostResolve artefatos de origem read-only no mesmo path absoluto visível ao libvirt do host
SOURCE_GOLDEN_IMAGE_DIRPath de imagem promovida no hostResolve entradas QCOW2 instaladas imutáveis no mesmo path absoluto visível ao libvirt do host
TRUST_PROXY_HEADERStrue no arquivo ComposePermite informação de cliente derivada de proxy sujeita às regras de proxy confiável do backend

O backend também default uploads de ISO para /var/lib/libvirt/images e limita uploads a 10 GB salvo se a configuração do backend for alterada deliberadamente.

Overrides de path no host

Duas variáveis de ambiente shell afetam bind mounts do 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

Crie e permissione esses diretórios primeiro. O path do container é mantido idêntico ao do host porque libvirt do host, não o container, abre arquivos de imagem para QEMU. Path que existe só dentro do container falhará no launch do guest.

Dados persistentes e não persistentes

LocalOwnership e ciclo de vida
/var/lib/libvirt/imagesISOs enviados, discos guest e overlays gerenciados pelo host
Diretório de ISO de origemGerenciado pelo operador, montado read-only
Diretório golden-imageEntradas imutáveis promovidas pelo operador, montadas read-only
Volume nomeado cto-dataEstado do backend incluindo registros de teste e journals de cleanup
Filesystem do container fora de mountsDescartável; não dependa dele para recovery

Faça backup ou snapshot só depois de identificar quais recursos devem ser retidos. O arquivo Compose não agenda backups.

Exposição e configurações de proxy

O frontend mapeia porta 80 do host. TRUST_PROXY_HEADERS não fornece TLS nem autenticação; só altera como o backend aceita metadados de conexão encaminhados de ranges de proxy explicitamente confiáveis. Se adicionar reverse proxy, configure caminho de rede e proxies confiáveis de forma estreita e verifique que headers de forwarding falsificados são rejeitados de peers não confiáveis.

Não coloque o console de avaliação diretamente na internet pública. Identidade, TLS, segredos e design de autorização de produção são decisão de deployment separada.

Valide toda alteração

Depois de mudar paths ou configurações:

  1. recrie o container afetado;
  2. verifique self_hosted: true pelo endpoint de mode;
  3. envie e lance ISO descartável;
  4. pare e delete o guest;
  5. reinicie a stack e confirme que estado de cleanup e inventário sobrevivem.