2.6 KiB
2.6 KiB
title, type, tags, date
| title | type | tags | date | |||||
|---|---|---|---|---|---|---|---|---|
| n8n Docker 安装与 SOCKS5 代理配置 | source |
|
2025-12-30 |
Source File
Summary
- 核心主题:n8n Docker 部署并配置 SOCKS5 代理访问外网
- 问题域:n8n 容器内网络隔离,需要通过宿主机代理访问 AI API(OpenAI/Claude 等)
- 方法/机制:Docker 自定义 Dockerfile 安装 curl/wget + docker-compose ALL_PROXY 环境变量指向宿主机 Docker 网桥 SOCKS5 端口
- 结论/价值:容器内 AI 工作流节点可正常访问被墙或海外服务
Key Claims
- n8n 容器默认网络隔离,HTTP/HTTPS 请求无法直接访问外网 AI 服务
ALL_PROXY=socks5://172.21.0.1:10808将容器流量路由到宿主机 SOCKS5 代理- Docker 网桥网关地址(
docker network inspect n8n_default中的 Gateway)决定宿主机代理监听地址 - 更新 n8n:进入 docker-compose 目录 →
docker compose pull→docker compose down→docker compose up -d
Key Quotes
"注意:
172.21.0.1需替换为以下命令输出的网桥 IP(Gateway)" — 网桥 IP 因环境而异,必须动态获取
Key Concepts
- Docker 网桥网络: Docker 默认 bridge 网络模式,容器通过
172.17.0.1(Linux)或172.18.0.1/172.21.0.1(macOS Docker Desktop)访问宿主机 - SOCKS5 代理: 一种代理协议,支持 TCP/UDP 流量转发;
socks5h://模式由代理服务器解析 DNS,防止 DNS 污染 - ALL_PROXY: 环境变量,HTTP/HTTPS/SOCKS 协议通用代理设置
- Docker 自定义 Dockerfile: 基于官方镜像安装额外工具(curl/wget)的标准方式
Key Entities
Connections
- n8n-Telegram-Trigger-HTTPS配置修复 ← relates_to ← n8n-Docker安装与SOCKS5代理配置(同属 n8n 自托管部署实战)
Contradictions
- 与"n8n 官方推荐直接暴露 5678 端口"不同:本方案通过 Caddy 反向代理隐藏端口,仅暴露 HTTPS 端点
Docker Compose 关键配置
environment:
- N8N_PROTOCOL=https
- N8N_HOST=n8n.ishenwei.online
- WEBHOOK_URL=https://n8n.ishenwei.online/
- N8N_TRUST_PROXY=true
- N8N_SECURE_COOKIE=true
- ALL_PROXY=socks5://172.21.0.1:10808
networks:
n8n_default:
external: true
容器内测试代理
docker exec -it n8n /bin/sh
curl --socks5 172.18.0.1:10808 https://ifconfig.me
# 返回国外 IP 即表示代理生效
Tags
- #n8n #docker #proxy #self-hosted