Ultimamente tenho enfrentado problemas com n8n, como o IP local estar inacessível mesmo com o contêiner Docker ativo. Longa história, mas basicamente reinstalei a imagem inteira no computador de placa única que hospeda o Docker do n8n e agora quero reinstalá-lo com docker compose, mas parece estar esbarrando em um obstáculo com a imagem
Aqui está o que apareceu
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
Acho que é um problema de para onde o download da imagem está apontando. Na página oficial do n8n e no Docker Hub, usa essa mesma imagem que não funciona. Alguém consegue me ajudar?
Não tenho certeza se o problema original de o IP local estar inacessível (parecia estar constantemente carregando) também estava relacionado a isso
O arquivo docker compose será mostrado abaixo
GNU nano 5.4 docker-compose.yaml
services:
n8n:
image: docker.n8n.io/n8nio/n8n
restart: always
ports:
O motivo pelo qual você não consegue acessar o n8n via IP local do SBC (por exemplo, http://192.168.1.x:5678) está no seu arquivo docker-compose.yaml:
ports:
"127.0.0.1:5678:5678"
Altere essa linha para permitir conexões de qualquer endereço IP na sua rede:
ports:
"5678:5678"
O registro docker.n8n.io é um espelho fornecido pela n8n, mas eventualmente aponta para o Docker Hub. Se esse espelho específico está tendo problemas de roteamento para sua localização, tente fazer o pull da imagem padrão diretamente do Docker Hub.
No seu docker-compose.yaml, altere: image: docker.n8n.io/n8nio/n8n para image: n8nio/n8n:latest
Você também pode tentar forçar seu SBC a usar o DNS do Google.
Você consegue fazer login no Docker Hub e depois fazer pull da imagem?
Além disso, em vez da tag latest, você consegue tentar fixar uma versão específica, por exemplo, 2.34.5
Não tenho certeza o que você quer dizer com fazer login no Dockerhub para fazer pull da imagem. Já consigo ver as instruções para fazer pull sem fazer login, que é a mesma que venho mostrando.
Qual versão específica você gostaria que eu fizesse pull?
Também devo mencionar que o SBC que estou usando é Radxa A7A, que é ARMv8 ou arm64, então tentei outros pulls no docker hub que têm aarm64 no nome, mas as instruções parecem ser as mesmas, exceto por um campo de cópia no lado direito que diz docker pull n8nio/n8n:2.35.1-arm64
Essa versão arm foi feita com pull com sucesso, também funciona com o compose, MAS agora estou enfrentando o problema que tinha antes, onde a URL local continuaria apenas carregando
Você pode modificar seu arquivo compose para ser 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
mas também descobri que outros serviços não querem carregar no navegador, como meu contêiner Docker do Home Assistant, Plex e Jellyfin. Eles simplesmente continuam carregando também. Até o Home Assistant continuou carregando no meu telefone. A conexão Ethernet está funcionando bem, considerando que consigo fazer ssh no SBC.