Nesta página
Nesta página
Hosting
Runtime de VM do Docker
Etapas compartilhadas de runtime para instalações do Docker baseadas em VM, como GCP, Hetzner e provedores de VPS semelhantes.
Inclua os binários necessários na imagem
Instalar binários dentro de um contêiner em execução é uma armadilha: tudo o que for instalado em runtime será perdido ao reiniciar. Inclua na imagem, durante a compilação, todos os binários externos necessários para uma skill.
Os exemplos abaixo abrangem apenas três binários, em ordem alfabética:
gog(dogogcli) para acesso ao Gmailgoplacespara o Google Placeswaclipara o WhatsApp
Estes são exemplos, não uma lista completa. Instale quantos binários forem necessários para suas skills usando o mesmo padrão. Quando você adicionar posteriormente uma skill que exija um novo binário:
- Atualize o Dockerfile.
- Recompile a imagem.
- Reinicie os contêineres.
Exemplo de Dockerfile
Compile e inicie
Se a compilação falhar com Killed ou código de saída 137 durante pnpm install --frozen-lockfile, a VM está sem memória. Use uma classe de máquina maior antes de tentar novamente.
Verifique os binários:
Saída esperada:
Verifique se o Gateway está ativo:
Uma resposta 200 de /healthz confirma que o processo do Gateway está escutando e íntegro; o HEALTHCHECK integrado à imagem consulta o mesmo endpoint.
O que persiste e onde
O OpenClaw é executado no Docker, mas o Docker não é a fonte da verdade. Todo estado de longa duração deve sobreviver a reinicializações, recompilações e reinícios da máquina.
| Componente | Localização | Mecanismo de persistência | Observações |
|---|---|---|---|
| Configuração do Gateway | /home/node/.openclaw/ |
Montagem de volume do host | Inclui openclaw.json |
| Credenciais de canal/provedor | /home/node/.openclaw/credentials/ |
Montagem de volume do host | Material de credenciais de canais e provedores |
| Perfis de autenticação do modelo | /home/node/.openclaw/agents/ |
Montagem de volume do host | agents/<agentId>/agent/auth-profiles.json (OAuth, chaves de API) |
| Arquivo legado de chave OAuth | /home/node/.config/openclaw/ |
Montagem de volume do host | Compatibilidade somente leitura para arquivos auxiliares OAuth anteriores à migração; openclaw doctor --fix os migra para auth-profiles.json |
| Configurações das skills | /home/node/.openclaw/skills/ |
Montagem de volume do host | Estado no nível da skill |
| Espaço de trabalho do agente | /home/node/.openclaw/workspace/ |
Montagem de volume do host | Código e artefatos do agente |
| Sessão do WhatsApp | /home/node/.openclaw/ |
Montagem de volume do host | Preserva o login por QR |
| Chaveiro do Gmail | /home/node/.openclaw/ |
Volume do host + senha | Requer GOG_KEYRING_PASSWORD |
| Pacotes de plugins | /home/node/.openclaw/npm, /home/node/.openclaw/git |
Montagem de volume do host | Raízes de pacotes de plugins disponíveis para download |
| Binários externos | /usr/local/bin/ |
Imagem do Docker | Devem ser incluídos durante a compilação |
| Runtime do Node | Sistema de arquivos do contêiner | Imagem do Docker | Recompilado a cada compilação da imagem |
| Pacotes do sistema operacional | Sistema de arquivos do contêiner | Imagem do Docker | Não instale em runtime |
| Contêiner do Docker | Efêmero | Reiniciável | Pode ser destruído com segurança |
Atualizações
Para atualizar o OpenClaw na VM: