Files
Brancheneinstufung2/MOLTBOT_SYNOLOGY_GUIDE.md
Floke 107c9dd185 [2f688f42] docs: Update Moltbot Synology Guide with final diagnosis
Updated the  to reflect the definitive conclusion that Moltbot (requiring Node.js v22+) cannot be installed on Synology NAS systems (due to Docker/kernel incompatibility with modern Node.js images, and Moltbot's hard requirement).

- Added a prominent warning about the unresolvable "Catch-22" at the beginning of the guide.
- Documented the  and  that represented the final, most advanced attempt to bypass the issues, including using Node.js v20, named Docker volumes, and aggressive patching attempts.
- Updated the troubleshooting section to clearly explain the unresolvable conflict and its implications, offering alternative solutions outside of Synology.
2026-01-28 10:28:01 +00:00

4.5 KiB

Moltbot auf Synology NAS installieren (Erweiterte Anleitung)


WICHTIGER HINWEIS (Stand: Jan 2026): Aktuell NICHT MÖGLICH

Aufgrund eines unlösbaren technischen Konflikts ist die Installation von Moltbot (Versionen, die Node.js v22+ erfordern) auf den meisten Synology NAS-Systemen derzeit nicht erfolgreich durchführbar.

Diese Anleitung dokumentiert den detaillierten Versuch und die dabei gewonnenen Erkenntnisse. Sie ist für fortgeschrittene Benutzer gedacht, die das Problem verstehen oder für zukünftige Versionen anpassen möchten.

Das Kernproblem (Catch-22):

  1. Host-Inkompatibilität: Der Docker-Dienst auf Synology ist oft nicht mit dem modernen node:22-Basis-Image kompatibel, das Moltbot benötigt. Dies führt zu "stillen Abstürzen", bei denen der Container ohne Log-Ausgabe fehlschlägt.
  2. Anwendungs-Anforderung: Um das Host-Problem zu umgehen, kann ein node:20-Image gebaut werden. Die Moltbot-Anwendung selbst hat jedoch eine harte, nicht patchbare Anforderung an node:22 zur Laufzeit und verweigert den Start.

Da der Host node:20 benötigt, die Anwendung aber node:22 verlangt, steckt die Installation in einer Sackgasse.


Voraussetzungen

  1. Container Manager: Das Container Manager-Paket (früher Docker) muss installiert sein.
  2. SSH-Zugang: Sie benötigen SSH-Zugang zu Ihrer Synology NAS, um die Befehle auszuführen.

Schritt 1: Konfigurationsdateien erstellen

Die folgenden Dateien repräsentieren den am weitesten fortgeschrittenen Versuch, das Kompatibilitätsproblem zu lösen.

1. docker-compose.yml Verwendet ein "Named Volume", was auf Synology-Systemen zuverlässiger ist.

version: '3.8'

services:
  moltbot:
    build:
      context: .
      dockerfile: Dockerfile.moltbot
    container_name: moltbot
    restart: unless-stopped
    ports:
      - "18789:18789"
    command: gateway --port 18789
    volumes:
      - moltbot_data:/home/node/.clawd

volumes:
  moltbot_data: {}

2. Dockerfile.moltbot Zwingt den Bau zur Verwendung von Node.js v20 und versucht, die Versionsprüfung im Quellcode zu entfernen (was sich als unwirksam erwiesen hat).

# Use Node.js v20 as the base image for better compatibility
FROM node:20-slim

# Install necessary tools as root
USER root
RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/*

# Switch to the non-privileged node user
USER node
WORKDIR /app

# Clone the repository
RUN git clone https://github.com/moltbot/moltbot.git .

# HACK: Attempt to patch the Node.js version check (INEFFECTIVE)
RUN find . -type f -exec sed -i 's/.*requires Node >=.*/\/\/ Version check disabled by Gemini/' {} +

# Install dependencies locally to avoid global permission issues
RUN npm install pnpm
RUN npx pnpm install
RUN npx pnpm build

# Expose port and define entrypoint
EXPOSE 18789
ENTRYPOINT ["/app/packages/clawdbot/node_modules/.bin/clawdbot"]
CMD ["--help"]

Schritt 2: Build & Onboarding (führt zum Fehler)

  1. Build: docker-compose build moltbot
  2. Onboarding: docker-compose run --rm --user node moltbot onboard

Dieser onboard-Befehl wird mit der Fehlermeldung moltbot requires Node >=22.0.0 fehlschlagen und beweist damit das unlösbare Problem.

Fehlerbehebung & Finale Diagnose

  • Problem: Container startet nicht, keine Logs (stiller Absturz).

    • Ursache: Inkompatibilität zwischen dem Standard-node:22+-Image und der Docker-Umgebung der Synology.
    • Lösung: Downgrade auf node:20-slim im Dockerfile. Dies löst das Startproblem, führt aber zum nächsten Fehler.
  • FINALER FEHLER: moltbot requires Node >=22.0.0 zur Laufzeit.

    • Ursache: Die Moltbot-Anwendung hat eine harte Anforderung an die Node.js-Version, die auch nach dem Kompilieren des Codes bestehen bleibt und sich durch einfache Skripte während des Builds nicht entfernen lässt.
    • Status: UNLÖSBAR. Solange die Synology-Umgebung keine neueren Node.js-Images unterstützt ODER die Moltbot-Entwickler die Mindestanforderung nicht senken, kann die Anwendung nicht installiert werden.
  • Erkenntnis zu Docker-Volumes auf Synology:

    • Problem: Host-Verzeichnisse (z.B. ./moltbot_data) verursachen stille Schreibfehler aufgrund von Berechtigungskonflikten.
    • Lösung: Immer von Docker verwaltete "Named Volumes" verwenden (moltbot_data:), da diese Methode robust funktioniert. Der Befehl docker-compose run muss zudem mit --user node ausgeführt werden, um mit den korrekten Berechtigungen in das Volume zu schreiben.