Últimamente he estado teniendo problemas con n8n, como que la IP local es inaccesible aunque el contenedor de docker estuviera activo. Larga historia, pero básicamente reinstalé toda la imagen en la computadora de placa única que aloja el docker de n8n y quiero reinstalarla ahora con docker compose, pero parece estar chocando contra un obstáculo con la imagen
Aquí está lo que decía
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
Creo que es un problema con dónde está apuntada la descarga de la imagen, en la página oficial de n8n y en docker hub, usa esta misma imagen que no funciona. ¿Puede alguien ayudarme?
No estoy seguro de si el problema original de que la IP local fuera inaccesible (como si siguiera en buffer) estaba relacionado con esto también
el archivo docker compose se mostrará a continuación
GNU nano 5.4 docker-compose.yaml
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
La razón por la que no puedes acceder a n8n a través de la IP local del SBC (por ejemplo, http://192.168.1.x:5678) está en tu archivo docker-compose.yaml:
ports:
"127.0.0.1:5678:5678"
Cambia esa línea para permitir conexiones desde cualquier dirección IP en tu red:
ports:
"5678:5678"
El registro docker.n8n.io es un espejo proporcionado por n8n, pero eventualmente apunta a Docker Hub. Si ese espejo específico está teniendo problemas de enrutamiento a tu ubicación, intenta extraer la imagen estándar directamente desde Docker Hub.
En tu docker-compose.yaml, cambia: image: docker.n8n.io/n8nio/n8n a image: n8nio/n8n:latest
También puedes intentar forzar que tu SBC use el DNS de Google.
¿Puedes intentar iniciar sesión en Docker Hub y luego descargar la imagen?
Además, en lugar de la etiqueta latest, ¿puedes intentar fijar una versión específica, por ejemplo, 2.34.5?
No estoy seguro de qué quieres decir con iniciar sesión en Dockerhub para descargar la imagen. Ya puedo ver las instrucciones para descargar sin iniciar sesión, que es la misma que he estado mostrando.
¿Qué versión específica querrías que descargue?
También debo mencionar que el SBC que estoy utilizando es Radxa A7A que es ARMv8 o arm64, así que intenté otras descargas en docker hub que tienen aarm64 en el nombre, pero las instrucciones parecen ser las mismas excepto por el campo de copia en el lado derecho que dice docker pull n8nio/n8n:2.35.1-arm64
Esa versión arm se descargó exitosamente, también funciona con el compose PERO ahora me enfrento al problema que tenía antes donde la URL local simplemente seguiría cargando
¿Podrías modificar tu archivo compose para que sea similar a este?
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
pero también he descubierto que otros servicios no quieren cargarse en el navegador como mi contenedor Docker de Home Assistant, Plex y Jellyfin. Simplemente siguen cargando. Incluso Home Assistant seguía cargando en mi teléfono. La conexión Ethernet está bien, sin embargo, ya que puedo hacer ssh en la SBC.