N8N und Puppeteer - Seltsamer Fehler beim Ausführen eines Schritts

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:

  1. Das Image, das derzeit in n8n-main läuft, wurde erstellt, bevor Chromium zur Dockerfile hinzugefügt wurde, oder
  2. 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