Hallo, ich habe versucht, n8n lokal in meinem Docker zu hosten und habe einen Pupeteer-basierten Schritt in meinen Workflow hinzugefügt. Aber jedes Mal, wenn ich versuche, diesen Schritt auszuführen, bekomme ich diesen Fehler
*
Problem in Node „Puppeteer Enhanced
Hallo @Nikolay_Sonin Willkommen!
Schau dir das an:
Meiner Meinung nach wird für diese Aufgabe eine benutzerdefinierte Dockerfile erforderlich sein, da es den Anschein hat, dass Chrome in deinem Container nicht installiert ist.
Hallo, hier ist meine Dockerfile
FROM n8nio/n8n:latest-debian
USER root
RUN apt-get update && apt-get install -y
chromium
chromium-driver
fonts-liberation
libasound2
libatk-bridge2.0-0
libatk1.0-0
libcups2
libdbus-1-3
libdrm2
libgbm1
libgtk-3-0
libnspr4
libnss3
libxcomposite1
libxdamage1
libxfixes3
libxkbcommon0
libxrandr2
xdg-utils
--no-install-recommends
&& apt-get clean
&& rm -rf /var/lib/apt/lists/*
#ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
#ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
ENV PUPPETEER_CHROMIUM_REVISION=148.0.7778.97
ENV PUPPETEER_PRODUCT=chrome
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/google-chrome-stable
RUN mkdir -p /home/node/.cache/puppeteer &&
chown -R node:node /home/node/.cache
USER node
RUN cd /home/node/.n8n &&
npm install n8n-nodes-puppeteer
Hallo @Nikolay_Sonin,
Wenn ich mir dein Dockerfile ansehe, wird Chromium bereits installiert:
RUN apt-get update && apt-get install -y chromium chromium-driver ...
Auffällig ist, dass du Chromium installierst, aber folgendes setzt:
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/google-chrome-stable
Kannst du überprüfen, ob diese Binary tatsächlich im Container vorhanden ist?
docker exec -it <container> which chromium
docker exec -it <container> which google-chrome-stable
Wenn nur Chromium vorhanden ist, versuche zu ändern:
ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
und erstelle das Image neu.
Die Fehlermeldung deutet darauf hin, dass Puppeteer versucht, eine bestimmte Chrome-Version in seinem Cache zu finden, anstatt den systemweit installierten Browser zu nutzen. Es wäre also auch hilfreich zu wissen, welche Einstellungen du im Puppeteer-Node verwendest (besonders die Einstellungen Browser Type und Executable Path). Hallo @Jekylls
Ok, hier ist die Ausgabe für beide Befehle:
Microsoft Windows [Version 10.0.19045.6456]
(c) Microsoft Corporation. All rights reserved.
C:\Users\jima>docker exec -it n8n-main which chromium
What's next:
Try Docker Debug for seamless, persistent debugging tools in any container or image → docker debug n8n-main
Learn more at
C:\Users\jima>docker exec -it n8n-main which google-chrome-stable
What's next:
Try Docker Debug for seamless, persistent debugging tools in any container or image → docker debug n8n-main
Learn more at
C:\Users\jima>
Der Name des Containers ist n8n-main
Danke, dass du das überprüft hast.
Die Tatsache, dass beide Befehle nichts zurückgeben, ist etwas… Das deutet darauf hin, dass entweder:
- Das Image, das derzeit in
n8n-mainläuft, wurde erstellt, bevor Chromium zur Dockerfile hinzugefügt wurde, oder - Chromium wurde während des Image-Builds nicht erfolgreich installiert.
Könntest du folgende Befehl ausführen:
docker exec -it n8n-main sh
und dann im Container:
chromium --version
ls -l /usr/bin/chrom*
env | grep PUPPETEER
Außerdem: Hast du das Image nach der Aktualisierung der Dockerfile mit docker compose build --no-cache (oder äquivalent) neu gebaut und den Container neu erstellt?
Momentand sagt der Puppeteer-Fehler, dass Chrome 148 im Cache nicht gefunden werden kann, aber die obigen Überprüfungen deuten darauf hin, dass der Container zur Laufzeit möglicherweise eigentlich gar keine Browser-Binary auf dem PATH verfügbar hat.
Ich habe versucht, deine Befehle auszuführen:
c:\prj\n8n>docker compose -f docker-n8n-3.yml build --no-cache
time="2026-06-22T18:45:40+03:00" level=warning msg="No services to build"
C:\Users\jima>docker exec -it n8n-main sh
~ $ chromium --version
sh: chromium: not found
~ $ ls -l /usr/bin/chrom*
ls: /usr/bin/chrom*: No such file or directory
~ $ env | grep PUPPETEER
~ $
Wie du sehen kannst, scheint es so, als ob dort nichts Ähnliches wie Chrome vorhanden ist. Was sollte ich tun, um Chrome dort installiert zu bekommen?
Hey @Nikolay_Sonin, das Kernproblem ist hier
time=“2026-06-22T18:45:40+03:00” level=warning msg=“No services to build”
Das bedeutet, dass deine docker-n8n-3.yml Compose-Datei keine build:-Direktive hat, also Docker dein Dockerfile nie wirklich benutzt hat. Es wird einfach nur das Standard-n8n-Image von Docker Hub gepullt, das kein Chrome enthält.
Um das zu beheben, öffne docker-n8n-3.yml und aktualisiere deinen n8n-Service, um auf dein Dockerfile zu zeigen:
services:
n8n:
build:
context: .
dockerfile: Dockerfile # oder wie auch immer du es genannt hast
entferne oder kommentiere die image:-Zeile aus, falls vorhanden
Dann neu bauen:
docker compose -f docker-n8n-3.yml build --no-cache
docker compose -f docker-n8n-3.yml up -d
Danach führe den chromium --version Check nochmal aus und es sollte gefunden werden. Stelle auch sicher, dass PUPPETEER_EXECUTABLE_PATH auf /usr/bin/chromium gesetzt ist (nicht google-chrome-stable), da das das ist, was du eigentlich installierst.
Ok, ich habe meine docker-n8n-3.yml mit deinen Zeilen aktualisiert und versucht zu starten
docker compose -f docker-n8n-3.yml build --no-cache
aber bekam diesen Fehler in Docker
Ign:1 http://deb.debian.org/debian buster InRelease
Ign:2 http://deb.debian.org/debian-security buster/updates InRelease
Ign:3 http://deb.debian.org/debian buster-updates InRelease
Err:4 http://deb.debian.org/debian buster Release
404 Not Found [IP: 151.101.130.132 80]
Err:5 http://deb.debian.org/debian-security buster/updates Release
404 Not Found [IP: 151.101.130.132 80]
Err:6 http://deb.debian.org/debian buster-updates Release
404 Not Found [IP: 151.101.130.132 80]
Reading package lists...
E: The repository 'http://deb.debian.org/debian buster Release' no longer has a Release file.
E: The repository 'http://deb.debian.org/debian-security buster/updates Release' no longer has a Release file.
E: The repository 'http://deb.debian.org/debian buster-updates Release' no longer has a Release file.
Mein Dockerfile beginnt mit
FROM n8nio/n8n:latest-debian
und ich vermute, dass es ein Problem mit dem entsprechenden Repository gibt. Wie könnte ich meine Dateien jetzt beheben?
Hi @Nikolay_Sonin
n8nio/n8n:latest-debian ist ein über 3 Jahre altes Image, das auf Debian 10 „Buster