Atualizações e diagnóstico
Mantenha o sh0 atualizado, volte atrás quando uma versão falhar e verifique o host antes de culpar a app.
Atualizar o sh0
Execute a atualização no servidor. Ela procura a versão final mais recente no GitHub, baixa o arquivo da sua arquitetura, confere com as somas de verificação publicadas e substitui o binário. A versão substituída é guardada para um rollback.
sudo sh0 update* sh0 self-update
Current version: v1.10.3-rc9
Checking for updates...
[+] Already running the latest version (v1.10.3-rc9).Num terminal interativo, o sh0 pergunta antes de reiniciar o serviço. Com --yes, reinicia sem perguntar. Executado por cron, pipe ou script sem --yes, nunca reinicia e avisa antes.
Canais
Por padrão, a atualização segue o canal stable: apenas versões finais. --channel beta instala a pré-versão mais recente. --force instala a versão do canal mesmo que não seja mais nova: é assim que se volta a uma versão anterior.
Reverter
--rollback recoloca a versão que a última atualização substituiu. Use quando uma versão falhar logo após uma atualização.
O que continua rodando
Suas aplicações são contêineres Docker: reiniciar o sh0 não as para. O proxy reverso na frente delas também continua no ar, desde que a unidade de serviço mantenha KillMode=process, que o instalador define (veja Instalação).
Verificar o host com o sh0 doctor
Execute o sh0 doctor no servidor quando algo parecer errado, antes de uma atualização ou logo após instalar. Ele não exige login e não altera nada.
sudo sh0 doctorsh0 doctor préflight d'hôte
données : /var/lib/sh0
OK docker démon joignable -- version 29.8.1, API 1.56, linux/amd64, 2 conteneurs (2 en marche)
OK port 80 tenu par `caddy` -- c'est notre propre pile
OK port 443 tenu par `caddy` -- c'est notre propre pile
OK port 9000 tenu par `sh0` -- c'est notre propre pile
OK disque /var/lib/docker : 20.5 % occupés, 119.2 Gio libres sur 149.9 Gio
OK certificats 1 actif(s) (1 par Caddy, 0 téléversé(s), 35 interne(s) hors seuil), le plus proche expire dans 88 j (demo.sh0.dev)
OK panneau (domaine) demo.sh0.dev servi en HTTPS, certificat valable jusqu'au 2026-12-29
WARN panneau (exposition) HTTPS en service, mais le port 9000 répond encore en clair sur 5.78.182.107
OK horloge synchronisée, décalage mesuré 0 s
OK Applications sans projet toutes les applications sont rattachées à un projet
des avertissements, rien de bloquant (code de sortie 0)Cada linha é uma verificação: Docker, as portas de que o sh0 precisa (80, 443 e a porta do painel), espaço livre em disco, certificados perto de expirar, o domínio do painel e se ele ainda responde em HTTP sem criptografia, o relógio e apps que ficaram fora de qualquer projeto. Uma linha WARN aponta algo a corrigir; não bloqueia.
Códigos de saída
0: nada bloqueia (podem restar avisos).1: pelo menos um problema bloqueante.2: uma verificação não pôde ser executada. Uma verificação que não rodou nunca é apresentada como aprovada.
Adicione --json para uma saída legível por máquina, por exemplo num script de monitoramento.
Verificações do banco
Dois subcomandos somente leitura inspecionam o banco do sh0 em busca de resquícios de versões antigas:
sh0 doctor backup-rowsconta os registros de restauração que uma migração anterior não conseguiu alcançar.sh0 doctor bind-mountslista as montagens do host que as regras de montagem atuais recusariam.