Como Instalar o OpenClaw no Fly.io (Hospedagem Gratuita)
Tutorial completo para fazer deploy do OpenClaw no Fly.io com plano gratuito. Aprenda a configurar volumes persistentes, secrets e ter seu agente de IA rodando na nuvem sem gastar nada.
Quer ter seu agente OpenClaw rodando 24/7 na nuvem sem gastar nada? O Fly.io oferece um plano gratuito generoso que é perfeito para rodar seu assistente pessoal. Neste tutorial, você vai aprender a fazer o deploy completo em menos de 15 minutos.
Por Que Escolher o Fly.io?
O Fly.io se destaca entre as opções de hospedagem gratuita por vários motivos:
Vantagens do Fly.io
| Característica | Fly.io | Oracle Cloud | Railway |
|---|---|---|---|
| Configuração | Simples | Complexa | Média |
| Plano gratuito | 3 VMs shared | 2 VMs ARM | Limitado |
| Volumes | Incluído | Incluído | Pago |
| Latência Brasil | ~50ms | ~150ms | ~80ms |
| CLI moderno | ✓ | ✗ | ✓ |
Recursos do Plano Gratuito
O Fly.io oferece gratuitamente:
- 3 máquinas virtuais shared-cpu-1x (256MB RAM)
- 3GB de armazenamento persistente
- 160GB de transferência por mês
- Certificado SSL automático
- IPv4 e IPv6 incluídos
Isso é mais que suficiente para rodar o OpenClaw!
Pré-requisitos
Antes de começar, você precisa ter:
- Conta no Fly.io — Crie em fly.io
- flyctl instalado — CLI do Fly.io
- Node.js 18+ — Para rodar o OpenClaw localmente (opcional)
- Chave de API Anthropic — Para o modelo Claude
Instalando o flyctl
No Linux ou macOS:
curl -L https://fly.io/install.sh | sh
No Windows (PowerShell):
pwsh -Command "iwr https://fly.io/install.ps1 -useb | iex"
Após instalar, faça login:
flyctl auth login
Passo 1: Criar os Arquivos de Configuração
Crie uma pasta para seu projeto:
mkdir openclaw-fly && cd openclaw-fly
Arquivo fly.toml
Crie o arquivo fly.toml com a configuração do app:
app = "meu-openclaw"
primary_region = "gru" # São Paulo
[build]
image = "node:20-slim"
[env]
NODE_ENV = "production"
TZ = "America/Sao_Paulo"
[mounts]
source = "openclaw_data"
destination = "/data"
initial_size = "1gb"
[[services]]
internal_port = 8080
protocol = "tcp"
[[services.ports]]
port = 443
handlers = ["tls", "http"]
[[services.http_checks]]
interval = "30s"
timeout = "5s"
path = "/health"
Importante: Substitua
meu-openclawpor um nome único para seu app.
Arquivo Dockerfile
Crie o Dockerfile:
FROM node:20-slim
# Instalar dependências do sistema
RUN apt-get update && apt-get install -y \
git \
curl \
&& rm -rf /var/lib/apt/lists/*
# Criar diretório de dados
RUN mkdir -p /data/openclaw
# Instalar OpenClaw globalmente
RUN npm install -g openclaw
# Configurar diretório de trabalho
WORKDIR /data/openclaw
# Script de inicialização
COPY start.sh /start.sh
RUN chmod +x /start.sh
EXPOSE 8080
CMD ["/start.sh"]
Script de Inicialização
Crie o arquivo start.sh:
#!/bin/bash
set -e
cd /data/openclaw
# Inicializar OpenClaw se não existir configuração
if [ ! -f "openclaw.yaml" ]; then
echo "Inicializando OpenClaw..."
openclaw init --non-interactive
fi
# Iniciar o Gateway
exec openclaw gateway start --foreground
Passo 2: Criar o App no Fly.io
Execute o comando de criação:
flyctl apps create meu-openclaw
Criar o Volume Persistente
O volume guarda seus dados entre deploys:
flyctl volumes create openclaw_data \
--region gru \
--size 1 \
--app meu-openclaw
Passo 3: Configurar os Secrets
Os secrets guardam suas credenciais de forma segura:
# Chave da API Anthropic (obrigatório)
flyctl secrets set ANTHROPIC_API_KEY="sua-chave-aqui" --app meu-openclaw
# Opcional: outras APIs
flyctl secrets set OPENAI_API_KEY="sua-chave-openai" --app meu-openclaw
Dica: Nunca coloque chaves de API no código ou arquivos de configuração públicos!
Passo 4: Fazer o Deploy
Agora é só fazer o deploy:
flyctl deploy --app meu-openclaw
O processo leva cerca de 2-3 minutos. Você verá:
==> Building image
--> Building image done
==> Pushing image to fly
--> Pushing image done
==> Creating release
--> Release created
==> Monitoring deployment
1 desired, 1 placed, 1 healthy, 0 unhealthy
--> v1 deployed successfully
Passo 5: Verificar o Status
Confirme que está funcionando:
flyctl status --app meu-openclaw
Saída esperada:
App
Name = meu-openclaw
Owner = personal
Hostname = meu-openclaw.fly.dev
Platform = machines
Machines
ID STATE REGION HEALTH CHECKS
e784e12c started gru 1 total, 1 passing
Passo 6: Acessar os Logs
Para ver o que está acontecendo:
flyctl logs --app meu-openclaw
Você pode manter os logs abertos em tempo real:
flyctl logs --app meu-openclaw -f
Configuração Pós-Deploy
Acessar o Console
Para executar comandos dentro da VM:
flyctl ssh console --app meu-openclaw
Dentro do console, você pode:
# Ver status do OpenClaw
openclaw status
# Editar configuração
nano /data/openclaw/openclaw.yaml
# Reiniciar
openclaw gateway restart
Conectar WhatsApp ou Telegram
Para conectar canais de mensagem, você precisa do QR code:
flyctl ssh console --app meu-openclaw
cd /data/openclaw
openclaw whatsapp link
O QR code aparecerá no terminal. Escaneie com o WhatsApp no seu celular.
Configuração Avançada
Adicionar Domínio Personalizado
Se você tem um domínio próprio:
flyctl certs create meubot.meudominio.com.br --app meu-openclaw
Configure o DNS do seu domínio para apontar para meu-openclaw.fly.dev.
Aumentar Recursos (Pago)
Se precisar de mais recursos:
# Aumentar RAM para 512MB
flyctl scale memory 512 --app meu-openclaw
# Aumentar CPU
flyctl scale vm shared-cpu-2x --app meu-openclaw
Múltiplas Regiões
Para menor latência global:
flyctl regions add iad --app meu-openclaw # Virginia (EUA)
flyctl regions add cdg --app meu-openclaw # Paris
Comparação: Fly.io vs Oracle Cloud
Se você já viu nosso tutorial de Oracle Cloud, pode estar se perguntando qual escolher:
| Aspecto | Fly.io | Oracle Cloud |
|---|---|---|
| Configuração | 15 minutos | 45+ minutos |
| CLI | Moderno, intuitivo | Complexo |
| Escalabilidade | Fácil | Trabalhoso |
| Latência Brasil | Excelente (GRU) | Boa (VCP) |
| Custo se crescer | Previsível | Pode surpreender |
| Documentação | Excelente | Confusa |
Recomendação:
- Use Fly.io se quer simplicidade e está começando
- Use Oracle Cloud se já tem experiência com cloud e quer máquinas maiores
Solução de Problemas
Deploy Falha
Se o deploy falhar:
# Ver logs de build
flyctl logs --app meu-openclaw
# Verificar configuração
flyctl config show --app meu-openclaw
App Não Inicia
Verifique os secrets:
flyctl secrets list --app meu-openclaw
Confirme que ANTHROPIC_API_KEY está configurado.
Volume Não Monta
Recrie o volume:
flyctl volumes list --app meu-openclaw
flyctl volumes delete vol_xxxxx --app meu-openclaw
flyctl volumes create openclaw_data --region gru --size 1 --app meu-openclaw
flyctl deploy --app meu-openclaw
Conexão WhatsApp Cai
O WhatsApp pode desconectar se a VM hibernar. Configure para evitar:
# Adicione ao fly.toml
[experimental]
auto_rollback = true
[[services]]
min_machines_running = 1 # Mantém sempre uma máquina ativa
Custos e Limites
Plano Gratuito Inclui
- 3 máquinas shared-cpu-1x (256MB)
- 3GB volume storage
- 160GB outbound transfer
- Certificados SSL ilimitados
Quando Você Paga
Você só paga se:
- Usar mais de 3 máquinas
- Precisar de mais de 256MB RAM
- Ultrapassar 160GB de transferência
- Quiser volumes maiores que 3GB
Para um uso pessoal do OpenClaw, o plano gratuito é mais que suficiente.
Automatizando Deploys
GitHub Actions
Crie .github/workflows/deploy.yml:
name: Deploy to Fly.io
on:
push:
branches: [main]
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: superfly/flyctl-actions/setup-flyctl@master
- run: flyctl deploy --remote-only
env:
FLY_API_TOKEN: ${{ secrets.FLY_API_TOKEN }}
Adicione o token no GitHub:
- Gere com
flyctl tokens create deploy - Adicione em Settings > Secrets >
FLY_API_TOKEN
Conclusão
Parabéns! Você agora tem seu OpenClaw rodando 24/7 na nuvem gratuitamente. O Fly.io oferece a melhor combinação de simplicidade, performance e custo para hospedar seu agente de IA.
Lembre-se de:
- Manter suas chaves de API seguras
- Monitorar os logs regularmente
- Fazer backup do volume periodicamente
Próximos Passos
- Configurar canais de mensagem — Conecte WhatsApp, Telegram
- Criar Skills personalizadas — Expanda as capacidades do seu agente
- Tutorial MCP — Integre com sistemas externos
Tutorial criado pela equipe OpenClaw Brasil. Última atualização: Fevereiro de 2026.