Przejdź do głównej treści

Documentation Index

Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt

Use this file to discover all available pages before exploring further.

Wspólne kroki uruchomieniowe dla instalacji Docker opartych na VM, takich jak GCP, Hetzner i podobni dostawcy VPS.

Wypiecz wymagane pliki binarne w obrazie

Instalowanie plików binarnych wewnątrz działającego kontenera to pułapka. Wszystko, co zostanie zainstalowane w czasie działania, zostanie utracone po restarcie. Wszystkie zewnętrzne pliki binarne wymagane przez Skills muszą być zainstalowane podczas budowania obrazu. Poniższe przykłady pokazują tylko trzy typowe pliki binarne:
  • gog (z gogcli) do dostępu do Gmaila
  • goplaces dla Google Places
  • wacli dla WhatsApp
To są przykłady, a nie kompletna lista. Możesz zainstalować tyle plików binarnych, ile potrzeba, używając tego samego wzorca. Jeśli później dodasz nowe Skills zależne od dodatkowych plików binarnych, musisz:
  1. Zaktualizować Dockerfile
  2. Przebudować obraz
  3. Uruchomić ponownie kontenery
Przykładowy Dockerfile
FROM node:24-bookworm

RUN apt-get update && apt-get install -y socat && rm -rf /var/lib/apt/lists/*

# Example binary 1: Gmail CLI (gogcli — installs as `gog`)
# Copy the current Linux asset URL from https://github.com/steipete/gogcli/releases
RUN curl -L https://github.com/steipete/gogcli/releases/latest/download/gogcli_linux_amd64.tar.gz \
  | tar -xzO gog > /usr/local/bin/gog; \
  chmod +x /usr/local/bin/gog

# Example binary 2: Google Places CLI
# Copy the current Linux asset URL from https://github.com/steipete/goplaces/releases
RUN curl -L https://github.com/steipete/goplaces/releases/latest/download/goplaces_linux_amd64.tar.gz \
  | tar -xzO goplaces > /usr/local/bin/goplaces; \
  chmod +x /usr/local/bin/goplaces

# Example binary 3: WhatsApp CLI
# Copy the current Linux asset URL from https://github.com/steipete/wacli/releases
RUN curl -L https://github.com/steipete/wacli/releases/latest/download/wacli-linux-amd64.tar.gz \
  | tar -xzO wacli > /usr/local/bin/wacli; \
  chmod +x /usr/local/bin/wacli

# Add more binaries below using the same pattern

WORKDIR /app
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml .npmrc ./
COPY ui/package.json ./ui/package.json
COPY scripts ./scripts

RUN corepack enable
RUN pnpm install --frozen-lockfile

COPY . .
RUN pnpm build
RUN pnpm ui:install
RUN pnpm ui:build

ENV NODE_ENV=production

CMD ["node","dist/index.js"]
Powyższe adresy URL są przykładami. Dla VM opartych na ARM wybierz zasoby arm64. Aby uzyskać powtarzalne kompilacje, przypnij wersjonowane adresy URL wydań.

Zbuduj i uruchom

docker compose build
docker compose up -d openclaw-gateway
Jeśli budowanie nie powiedzie się z Killed lub exit code 137 podczas pnpm install --frozen-lockfile, VM ma za mało pamięci. Przed ponowną próbą użyj większej klasy maszyny. Zweryfikuj pliki binarne:
docker compose exec openclaw-gateway which gog
docker compose exec openclaw-gateway which goplaces
docker compose exec openclaw-gateway which wacli
Oczekiwane wyjście:
/usr/local/bin/gog
/usr/local/bin/goplaces
/usr/local/bin/wacli
Zweryfikuj Gateway:
docker compose logs -f openclaw-gateway
Oczekiwane wyjście:
[gateway] listening on ws://0.0.0.0:18789

Co gdzie jest utrwalane

OpenClaw działa w Docker, ale Docker nie jest źródłem prawdy. Cały długotrwały stan musi przetrwać restarty, przebudowy i ponowne uruchomienia systemu.
KomponentLokalizacjaMechanizm utrwalaniaUwagi
Konfiguracja Gateway/home/node/.openclaw/Montowanie woluminu hostaObejmuje openclaw.json, .env
Profile uwierzytelniania modeli/home/node/.openclaw/agents/Montowanie woluminu hostaagents/<agentId>/agent/auth-profiles.json (OAuth, klucze API)
Klucz profilu uwierzytelniania/home/node/.config/openclaw/Montowanie woluminu hostaLokalny klucz szyfrowania dla materiału tokenów profilu uwierzytelniania OAuth
Konfiguracje Skills/home/node/.openclaw/skills/Montowanie woluminu hostaStan na poziomie Skills
Obszar roboczy agenta/home/node/.openclaw/workspace/Montowanie woluminu hostaKod i artefakty agenta
Sesja WhatsApp/home/node/.openclaw/Montowanie woluminu hostaZachowuje logowanie QR
Baza kluczy Gmaila/home/node/.openclaw/Wolumin hosta + hasłoWymaga GOG_KEYRING_PASSWORD
Pakiety Plugin/home/node/.openclaw/npm, /home/node/.openclaw/gitMontowanie woluminu hostaKorzenie pobieralnych pakietów Plugin
Zewnętrzne pliki binarne/usr/local/bin/Obraz DockerMuszą być wypieczone podczas budowania
Środowisko uruchomieniowe NodeSystem plików konteneraObraz DockerPrzebudowywane przy każdym budowaniu obrazu
Pakiety systemu operacyjnegoSystem plików konteneraObraz DockerNie instaluj w czasie działania
Kontener DockerEfemerycznyMożliwy do ponownego uruchomieniaMożna go bezpiecznie zniszczyć

Aktualizacje

Aby zaktualizować OpenClaw na VM:
git pull
docker compose build
docker compose up -d

Powiązane