Platforms overview
EasyRunner
O EasyRunner hospeda o Gateway do OpenClaw como um pequeno aplicativo em contêiner por trás de seu proxy Caddy. Este guia pressupõe um host EasyRunner que executa aplicativos Compose compatíveis com Podman e encerra conexões HTTPS por meio do Caddy.
Antes de começar
- Um servidor EasyRunner com um domínio direcionado para ele.
- A imagem oficial do OpenClaw (
ghcr.io/openclaw/openclaw) ou uma compilação própria. - Um volume persistente de configuração para
/home/node/.openclaw. - Um volume persistente de espaço de trabalho para
/home/node/.openclaw/workspace. - Um token ou uma senha forte para o Gateway.
Mantenha a autenticação de dispositivo ativada quando possível. Se o seu proxy reverso não conseguir transmitir corretamente a identidade do dispositivo, corrija primeiro as configurações de proxy confiável (consulte Autenticação por proxy confiável); use métodos perigosos para ignorar a autenticação somente em uma rede totalmente privada e controlada pelo operador.
Aplicativo Compose
Crie um aplicativo EasyRunner com um arquivo Compose estruturado assim:
services: openclaw: image: ghcr.io/openclaw/openclaw:latest restart: unless-stopped environment: OPENCLAW_GATEWAY_TOKEN: ${OPENCLAW_GATEWAY_TOKEN} OPENCLAW_HOME: /home/node OPENCLAW_STATE_DIR: /home/node/.openclaw OPENCLAW_CONFIG_PATH: /home/node/.openclaw/openclaw.json OPENCLAW_WORKSPACE_DIR: /home/node/.openclaw/workspace volumes: - openclaw-config:/home/node/.openclaw - openclaw-workspace:/home/node/.openclaw/workspace labels: caddy: openclaw.example.com caddy.reverse_proxy: "{{upstreams 1455}}" command: ["node", "openclaw.mjs", "gateway", "--bind", "lan", "--port", "1455"] volumes: openclaw-config: openclaw-workspace:Substitua openclaw.example.com pelo nome do host do seu Gateway. Armazene OPENCLAW_GATEWAY_TOKEN no gerenciador de segredos/ambiente do EasyRunner em vez de incluí-lo na definição do aplicativo. Por padrão, a imagem se vincula ao local loopback, portanto, a opção explícita --bind lan --port 1455 em command é necessária para que o Caddy consiga acessar o contêiner.
Configurar o OpenClaw
Dentro do volume persistente de configuração, mantenha o Gateway acessível somente por meio do proxy e exija autenticação:
{ gateway: { bind: "lan", port: 1455, auth: { token: "${OPENCLAW_GATEWAY_TOKEN}", }, },}Se o Caddy encerrar o TLS para o Gateway, defina as configurações de proxy confiável para o caminho exato do proxy, em vez de desativar globalmente as verificações de autenticação. Consulte Autenticação por proxy confiável.
Verificar
Na sua estação de trabalho:
openclaw gateway probe --url https://openclaw.example.com --token <token>openclaw gateway status --url https://openclaw.example.com --token <token>No host EasyRunner, GET /healthz (atividade) e GET /readyz (prontidão) não exigem autenticação e dão suporte à verificação de integridade de contêiner integrada à imagem. Verifique também nos logs do aplicativo se o Gateway está escutando e se não há falhas de inicialização relacionadas a SecretRef, Plugin ou autenticação de canal.
Atualizações e backups
- Baixe ou compile a nova imagem do OpenClaw e, em seguida, reimplante o aplicativo EasyRunner.
- Faça backup do volume
openclaw-configantes das atualizações. Ele contémopenclaw.json,agents/<agentId>/agent/auth-profiles.jsone o estado dos pacotes de Plugins instalados. - Faça backup de
openclaw-workspacese os agentes gravarem nele dados persistentes de projetos. - Execute
openclaw doctorapós atualizações importantes para detectar migrações de configuração e avisos de serviço.
Solução de problemas
gateway probenão consegue se conectar: confirme se o nome do host do Caddy aponta para o aplicativo e se o contêiner está escutando em0.0.0.0:1455.- Falha na autenticação: altere simultaneamente o token nos segredos do EasyRunner e no comando do cliente local.
- Os arquivos pertencem ao usuário root após a restauração: a imagem é executada como
node(uid 1000); corrija os volumes montados para que esse usuário possa gravar em/home/node/.openclawe/home/node/.openclaw/workspace. - Falha nos Plugins de navegador ou canal: verifique se os binários externos necessários, o acesso de saída à rede e as credenciais montadas estão disponíveis dentro do contêiner.