Instalação
Coloque o sh0 em funcionamento em um servidor limpo em menos de um minuto. Um comando baixa o binário -- o sh0 cuida de todas as dependências automaticamente.
Requisitos de Sistema
| Requisito | Mínimo | Recomendado |
|---|---|---|
| SO | Linux (qualquer distro) | Ubuntu 22.04+ / Debian 12+ |
| RAM | 1 GB | 2 GB+ |
| Disco | 10 GB | 20 GB+ (SSD) |
| CPU | 1 vCPU | 2 vCPUs+ |
| Docker | Instalado automaticamente pelo sh0 se ausente | |
Plataformas Suportadas
O sh0 fornece binários pré-compilados para as seguintes arquiteturas:
x86_64(AMD64) -- A maioria dos servidores cloud e provedores VPSaarch64(ARM64) -- AWS Graviton, Oracle Ampere, Raspberry Pi 4+
sh0 serve como root, ele detecta e instala automaticamente Docker e Caddy se estiverem ausentes. Nenhuma configuração manual necessária.Instalar sh0
Instalação Rápida (Recomendada)
O script de instalação detecta sua arquitetura, baixa o binário mais recente e configura o serviço systemd automaticamente:
curl -fsSL https://sh0.dev/install | shO script realiza estas etapas:
- Detecta a arquitetura da sua CPU (x86_64 ou aarch64)
- Baixa o binário sh0 mais recente para
/usr/local/bin/sh0 - Define permissões de execução
- Cria uma unidade de serviço systemd
- Habilita e inicia o serviço
Download Manual
Se preferir instalar manualmente, baixe o binário diretamente:
# Download the binary (replace ARCH with amd64 or arm64)
curl -L -o /usr/local/bin/sh0 https://sh0.dev/download/latest/sh0-linux-ARCH
# Make it executable
chmod +x /usr/local/bin/sh0
# Start the server
sh0 serveVerificar Instalação
Verifique se o sh0 está instalado e em execução:
# Check the version
sh0 --version
# Check the service status
systemctl status sh0
# Verify the dashboard is accessible
curl -s http://localhost:9000/api/healthO endpoint de saúde deve retornar uma resposta JSON confirmando que o servidor está operacional:
{"data": {"status": "ok", "version": "1.6.0", "uptime": 42}}Configuração do Serviço Systemd
Se você usou o script de instalação rápida, o serviço systemd já está configurado. Para instalações manuais, crie o arquivo de serviço:
[Unit]
Description=sh0 Deployment Platform
After=docker.service
Requires=docker.service
[Service]
Type=simple
ExecStart=/usr/local/bin/sh0 serve
Restart=always
RestartSec=5
Environment=SH0_DATA_DIR=/var/lib/sh0
[Install]
WantedBy=multi-user.targetDepois habilite e inicie o serviço:
sudo systemctl daemon-reload
sudo systemctl enable sh0
sudo systemctl start sh0journalctl -u sh0 -f.Configuração de Firewall
O sh0 requer que as seguintes portas estejam acessíveis:
| Porta | Protocolo | Finalidade |
|---|---|---|
| 80 | TCP | Tráfego HTTP (redireciona para HTTPS) |
| 443 | TCP | Tráfego HTTPS para suas aplicações implantadas |
| 9000 | TCP | Painel e API do sh0 |
Se estiver usando ufw (Ubuntu/Debian):
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw allow 9000/tcpAtualizando o sh0
Atualizar é tão simples quanto substituir o binário e reiniciar o serviço. Sua configuração, aplicações implantadas e dados são preservados -- eles ficam no diretório de dados, não dentro do binário.
# Download the latest version
curl -fsSL https://sh0.dev/install | sh
# Or manually:
curl -L -o /usr/local/bin/sh0 https://sh0.dev/download/latest/sh0-linux-amd64
sudo systemctl restart sh0