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ísticaFly.ioOracle CloudRailway
ConfiguraçãoSimplesComplexaMédia
Plano gratuito3 VMs shared2 VMs ARMLimitado
VolumesIncluídoIncluídoPago
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:

  1. Conta no Fly.io — Crie em fly.io
  2. flyctl instalado — CLI do Fly.io
  3. Node.js 18+ — Para rodar o OpenClaw localmente (opcional)
  4. 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-openclaw por 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-DeployAcessar 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çadaAdicionar 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:

AspectoFly.ioOracle Cloud
Configuração15 minutos45+ minutos
CLIModerno, intuitivoComplexo
EscalabilidadeFácilTrabalhoso
Latência BrasilExcelente (GRU)Boa (VCP)
Custo se crescerPrevisívelPode surpreender
DocumentaçãoExcelenteConfusa

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 ProblemasDeploy 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 LimitesPlano 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 DeploysGitHub 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:

  1. Gere com flyctl tokens create deploy
  2. 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

Tutorial criado pela equipe OpenClaw Brasil. Última atualização: Fevereiro de 2026.