Docs / Primeiros Passos / Configuração do Servidor

Configuração do Servidor

Antes de iniciar o sh0, você só precisa fazer duas coisas: definir o hostname do seu servidor e apontar seu DNS para ele. O sh0 cuida de todo o resto.

Comece com um Servidor Limpo

O sh0 foi projetado para ser instalado em um servidor limpo. Ele gerencia Docker, Caddy e toda a rede automaticamente. Usar um servidor limpo evita conflitos com serviços existentes nas portas 80 e 443.

Note
Você não precisa instalar Docker ou Caddy manualmente. Quando você executa sh0 serve como root, ele detecta dependências ausentes e as instala para você.

Definir o Hostname

Defina o hostname do seu servidor para corresponder ao domínio que você usará para o painel sh0. Isso garante que certificados SSL e roteamento do proxy reverso funcionem corretamente.

Terminal
# Set the hostname (replace with your actual domain)
sudo hostnamectl set-hostname panel.example.com

Depois atualize /etc/hosts para que o servidor possa resolver seu próprio hostname:

/etc/hosts
# Add this line (use your server's public IP)
203.0.113.10    panel.example.com

Verifique se o hostname está definido:

Terminal
hostname -f
# Should output: panel.example.com

Configurar DNS

No seu provedor DNS (Cloudflare, Namecheap, Route 53, etc.), crie dois registros A apontando para o endereço IP do seu servidor:

TipoNomeValorFinalidade
Apanel.example.comIP do seu servidorPainel do sh0
A (wildcard)*.example.comIP do seu servidorAplicações implantadas recebem subdomínios automáticos
DNS Wildcard
O registro wildcard (*.example.com) permite que o sh0 atribua automaticamente subdomínios como myapp.example.com a cada aplicação implantada. Sem ele, você precisará criar registros DNS individuais para cada aplicação.

Iniciar sh0

Uma vez que seu hostname e DNS estejam configurados, inicie o sh0 com seu domínio:

Terminal
sh0 serve --panel-domain panel.example.com --base-domain example.com

Na primeira execução, o sh0 irá:

  1. Detectar e instalar Docker Engine se ausente
  2. Detectar e instalar Caddy (proxy reverso) se ausente
  3. Inicializar o banco de dados e gerar chaves de criptografia
  4. Iniciar o painel na porta 9000
  5. Provisionar certificados SSL via Let's Encrypt
Note
A propagação de DNS pode levar alguns minutos. Se o provisionamento de SSL falhar na primeira tentativa, aguarde um momento e reinicie o sh0. O Caddy tentará novamente automaticamente.

O que o sh0 Instala Automaticamente

Ao executar como root no Linux, sh0 serve provisiona automaticamente essas dependências se não estiverem presentes:

DependênciaMétodo de InstalaçãoFinalidade
Docker Engineget.docker.comRuntime de contêineres para aplicações implantadas
CaddyRepositório APT oficial ou download do binárioProxy reverso com SSL automático

Você também pode executar as verificações de provisionamento sem iniciar o servidor:

Terminal
sh0 setup