Expor uma Container App por HTTPS¶
Uma Fleet é um conjunto de recursos dedicado onde podes implementar várias coisas: servidores de jogos, bases de dados e Container Apps (qualquer imagem Docker que queiras correr, com a sua própria atribuição de CPU/RAM). Este guia cobre a parte onde as pessoas ficam presas: conseguir que uma Container App fique acessível por HTTPS num domínio a sério, não só num endereço interno.
As três formas de expor uma Container App¶
Quando adicionas uma Container App à tua fleet e ativas Expor por HTTPS, o assistente de configuração pergunta-te como queres que o endereço público funcione. Há três modos:
| Modo | O que obténs | Esforço de configuração |
|---|---|---|
| Subdomínio gratuito da plataforma | Um endereço gratuito *.zaroz.cloud com certificado automático |
Nenhum, sem DNS a mexer |
| O teu próprio domínio (validação HTTP) | HTTPS num domínio teu, certificado emitido por desafio HTTP | Adiciona um registo DNS, verificado em direto no assistente |
| O teu próprio domínio (Cloudflare DNS) | HTTPS num domínio teu, funciona mesmo atrás do proxy da Cloudflare | Precisas de uma conta Cloudflare e de um token de API limitado |
Se só quiseres ter algo online depressa sem mexer em DNS, escolhe Subdomínio gratuito da plataforma e passa à frente o resto deste guia, não há mais nada a configurar. Os outros dois modos são para quando precisas do teu próprio domínio.
Opção A: o teu próprio domínio, validação HTTP¶
É a forma mais simples de usar um domínio teu, desde que esse domínio não esteja atrás de um proxy (vê a Opção B se estiver).
Passo 1: escolhe o modo e introduz o teu domínio¶
No assistente de configuração, seleciona O teu próprio domínio (validação HTTP), depois introduz o domínio no ecrã seguinte, por exemplo app.exemplo.com. Só o nome do host, não um URL completo.
Passo 2: aponta o DNS do teu domínio¶
Tal como nos nossos outros produtos baseados em domínio, o assistente mostra-te o IP exato para onde apontar e deixa-te verificar antes de avançar:
- O assistente mostra um IP público, por exemplo
188.213.7.49. É o ingress que termina o tráfego HTTPS da tua app. - Entra no teu registador (ou onde giras o DNS do teu domínio) e adiciona um registo A para o teu domínio a apontar para esse IP.
- De volta ao assistente, clica em Verificar DNS agora. Faz uma consulta em direto e diz-te se corresponde, se encontrou outra coisa, ou se ainda não resolve nada.
Assim que a verificação passar (ou se tiveres a certeza de que a propagação ainda não chegou e clicares em Continuar mesmo assim), avança para confirmar a configuração da tua Container App.
Não ponhas este domínio atrás do proxy da Cloudflare
A validação HTTP precisa de chegar diretamente ao teu domínio para emitir o certificado. Se o domínio estiver com proxy da Cloudflare (o ícone da nuvem laranja), a emissão do certificado vai falhar. Se quiseres manter o domínio atrás do proxy da Cloudflare, usa antes a Opção B, está feita mesmo para esse caso. Se a nossa verificação de DNS em direto reparar que o domínio resolve atualmente para um IP da Cloudflare, assinala isso especificamente em vez de um erro genérico.
Erros comuns¶
- Os mesmos erros que na configuração de DNS do WordPress: zona DNS errada, atraso na propagação, escrever um URL em vez de um host à parte. Vê Configura o teu site WordPress para o resumo completo, o passo de DNS por baixo funciona exatamente da mesma forma aqui.
- Não aparece nenhum IP / erro "não configurado". Significa que o cluster onde a tua fleet caiu ainda não tem o IP de ingress configurado do nosso lado. Contacta o suporte, não é nada da tua parte.
Opção B: o teu próprio domínio, Cloudflare DNS¶
Usa isto quando quiseres manter o teu domínio atrás do proxy da Cloudflare (nuvem laranja), ou quando preferires não mexer em registos DNS à mão.
Passo 1: escolhe o modo e introduz os teus dados¶
Seleciona O teu próprio domínio (Cloudflare DNS). No ecrã seguinte vais precisar de:
- Domínio — o domínio que queres usar, p. ex.
app.exemplo.com. - E-mail da conta Cloudflare — o e-mail da conta Cloudflare que gere o DNS deste domínio.
- Token de API da Cloudflare — um token com permissão
Zone:DNS:Editlimitado a esse domínio.
Cria um token limitado, não uses a tua Global API Key
No painel da Cloudflare, vai a My Profile → API Tokens → Create Token, e usa o modelo Edit zone DNS limitado só ao domínio que estás a usar aqui. Não uses a tua Global API Key de toda a conta, um token limitado que seja exposto só consegue mexer no DNS de uma zona; uma Global Key exposta consegue mexer em toda a tua conta Cloudflare.
Passo 2: é só isso¶
Ao contrário do modo de validação HTTP, aqui não há nenhum registo DNS para adicionares ou verificares. Nós criamos e gerimos o registo DNS automaticamente usando o token de API, e o certificado é emitido através do desafio de DNS da Cloudflare, que também funciona com o domínio com proxy.
Confirma e termina¶
Seja qual for o modo escolhido, o ecrã de confirmação resume a tua imagem, a porta, o modo de exposição e o domínio (se aplicável). Assim que confirmares, a app é implementada e, nos modos baseados em domínio, a emissão do certificado segue-se pouco depois de o DNS ficar confirmado em direto.
Perguntas frequentes¶
Posso mudar de modo mais tarde?
Sim, volta a abrir a configuração da tua Container App e repete os passos de HTTPS. Se saíres do modo Cloudflare DNS, isso não apaga o registo DNS que a Cloudflare criou; apaga-o tu próprio se já não o quiseres.
Por que é que a validação HTTP precisa de um registo A à parte, mas o modo Cloudflare não?
Usam tipos de desafio ACME diferentes. A validação HTTP prova que controlas o domínio ao servir um ficheiro num URL específico na porta 80, por isso a autoridade de certificação precisa de chegar diretamente ao teu servidor, daí não poder haver proxy pelo meio. O desafio de DNS da Cloudflare prova o controlo criando antes um registo TXT via API, o que não depende de o tráfego HTTP para o domínio estar ou não com proxy.
O meu token de API deixou de funcionar depois de confirmar a configuração.
Os tokens de API da Cloudflare podem expirar ou ser revogados independentemente da Zaroz. Se a renovação do certificado começar a falhar, gera um token limitado novo no painel da Cloudflare e atualiza-o nas definições HTTPS da tua Container App.
Isto aplica-se só a Container Apps, ou também a servidores de jogos?
Este guia é específico para Container Apps. Os servidores de jogos e outros membros da fleet usam mecanismos de exposição diferentes (portas, registos SRV) cobertos na documentação de cada produto; vê o guia do WordPress ou a secção do FiveM para isso.