In letzter Zeit habe ich Probleme mit n8n, wie zum Beispiel, dass die lokale IP nicht erreichbar ist, obwohl der Docker-Container aktiv war. Lange Geschichte, aber ich habe das gesamte Image auf dem Single-Board-Computer, der den n8n-Docker hostet, neu installiert und möchte es jetzt mit Docker Compose neu installieren, aber es scheint auf ein Hindernis bei dem Image zu stoßen
Hier ist, was es sagte
radxa@radxa-cubie-a7a:~/ngrokcompose$ docker pull docker.n8n.io/n8nio/n8n
Using default tag: latest
latest: Pulling from n8nio/n8n
ef354d822d2e: Pull complete
067acbc617c7: Download complete
3098f6258e8b: Pull complete
1b117172ef7a: Download complete
2051fdaef421: Download complete
7ecc50e748e0: Download complete
37a64cae8b50: Pulling fs layer
4f4fb700ef54: Download complete
cb121033bd30: Download complete
1b20058d68d1: Download complete
9da0ac8feff8: Download complete
e8b67aeaf9c3: Download complete
failed to copy: httpReadSeeker: failed open: failed to do request: Get “https://registry-1.docker.io/v2/n8nio/n8n/blobs/sha256:37a64cae8b506955f09cb0095c906c50d1d027d1590c41d29c27ad580f8c1fef”: net/http: timeout awaiting response headers
Ich denke, dass dies ein Problem mit der Quelle des Image-Downloads ist. Auf der offiziellen n8n-Seite und Docker Hub wird dasselbe Image verwendet, das nicht funktioniert. Kann mir jemand helfen?
Ich bin mir nicht sicher, ob das ursprüngliche Problem der Unerreichbarkeit der lokalen IP (wie es ständig pufferte) damit zusammenhängt
die Docker-Compose-Datei wird unten angezeigt
GNU nano 5.4 docker-compose.yaml
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
Der Grund, warum du nicht über die lokale IP des SBC (z. B. http://192.168.1.x:5678) auf n8n zugreifen kannst, liegt tatsächlich in deiner docker-compose.yaml-Datei:
ports:
"127.0.0.1:5678:5678"
Ändere diese Zeile, um Verbindungen von jeder IP-Adresse in deinem Netzwerk zu erlauben:
ports:
"5678:5678"
Die docker.n8n.io-Registry ist ein von n8n bereitgestellter Mirror, der aber letztendlich auf Docker Hub verweist. Falls dieser spezifische Mirror Routing-Probleme zu deinem Standort hat, versuche stattdessen, das Standard-Image direkt von Docker Hub zu pullen.
Ändere in deiner docker-compose.yaml: image: docker.n8n.io/n8nio/n8n zu image: n8nio/n8n:latest
Du kannst auch versuchen, deinen SBC zu zwingen, Google’s DNS zu verwenden.
Kannst du dich bei Docker Hub anmelden und dann das Image pullen?
Außerdem, statt des latest-Tags, kannst du versuchen, eine spezifische Version zu verwenden, zum Beispiel 2.34.5
Ich bin mir nicht sicher, was du mit dem Anmelden bei Dockerhub meinst, um das Image zu pullen. Ich kann bereits die Anweisungen zum Pullen ohne Anmeldung sehen, die dieselben sind, die ich die ganze Zeit gezeigt habe.
Welche spezifische Version möchtest du, dass ich pullen?
Auch muss ich erwähnen, dass der SBC, den ich verwende, der Radxa A7A ist, der ARMv8 oder arm64 ist. Ich habe also andere Pulls auf Docker Hub versucht, die aarm64 im Namen haben, aber die Anweisungen sehen gleich aus, außer bei dem einen Kopierfeld auf der rechten Seite, das docker pull n8nio/n8n:2.35.1-arm64 sagt
Diese arm-Version wurde erfolgreich gepullt und funktioniert auch mit dem Compose, aber jetzt bin ich auf das Problem gestoßen, das ich zuvor hatte, bei dem die lokale URL einfach nur buffern würde
Könntest du deine Compose-Datei ähnlich wie diese ändern?
services:
n8n:
image: n8nio/n8n:2.35.1-arm64
restart: always
ports:
# Uncomment the line you prefer:
# - "0.0.0.0:5678:5678" # expose on every interface
- "192.168.1.100:5678:5678" # expose only on this IP
env_file: .env
volumes:
- n8n_data:/home/node/.n8n
# ------- helpful n8n URL vars (see step 2) -------
environment:
- N8N_HOST=192.168.1.100 # or 0.0.0.0 if you used the 0.0.0.0 mapping
- N8N_PORT=5678
- N8N_URL=http://192.168.1.100:5678
aber ich habe auch festgestellt, dass andere Dienste nicht im Browser geladen werden möchten, wie mein Home Assistant Docker-Container, Plex und Jellyfin. Sie laden einfach weiter. Selbst Home Assistant lud auf meinem Telefon weiter. Die Ethernet-Verbindung ist allerdings in Ordnung, da ich mich per SSH in die SBC verbinden kann.