--- title: "n8n Docker install & update" type: source tags: [n8n, docker, workflow] date: 2026-04-22 --- ## Source File - [[raw/Agent/n8n docker install & update.md]] ## Summary(用中文描述) - 核心主题:n8n 工作流自动化平台的 Docker 容器化部署、网络代理配置与版本更新 - 问题域:如何在 Linux 服务器上通过 Docker Compose 部署 n8n,并配置容器内网络代理实现科学上网 - 方法/机制:通过自定义 Dockerfile 扩展官方镜像安装 curl/wget 工具;设置 `ALL_PROXY=socks5://宿主机Docker网桥IP:10808` 环境变量使容器流量走 SOCKS5 代理;配置 Caddy 反向代理提供 HTTPS 访问 - 结论/价值:实现 n8n 容器在受限网络环境下的完整部署,支持通过域名访问 Web UI 和接收 Telegram 等外部服务的 Webhook 回调 ## Key Claims(用中文描述) - n8n Docker 容器内通过 SOCKS5 代理(V2Ray/Tuic)实现科学上网,代理地址为宿主机 Docker 网桥 IP + 端口 10808 - `ALL_PROXY` 环境变量控制容器内 HTTP/HTTPS 流量走指定 SOCKS5 代理 - 端口 5678 映射到宿主机,配合 Caddy 反向代理提供外部 HTTPS 访问 - Docker 网络 `n8n_default` 由 docker-compose 自动创建,需确保宿主机防火墙允许 Docker 网桥访问代理端口 10808 - 更新 n8n 版本:进入目录 → `docker compose pull` → `docker compose down` → `docker compose up -d` ## Key Quotes > "Docker network inspect n8n_default" — 查看 Docker 网桥 Gateway IP,用于配置 `ALL_PROXY` 地址 > "注意:`172.21.0.1` 需替换为以下命令输出的网桥 IP(Gateway)" — 强调网桥 IP 因环境而异 > "Telegram 要求 Webhook URL 必须是 HTTPS 协议,HTTP 或空值均无法注册" — 来自 [[n8n-configure-telegram-trigger]] ## Key Concepts - [[Docker Compose]]:定义和运行多容器 Docker 应用的工具,通过 `docker-compose.yml` 配置 n8n 服务 - [[SOCKS5 代理]]:一种网络代理协议,n8n 容器通过 `ALL_PROXY=socks5://...` 环境变量配置容器内流量走代理 - [[Docker 网桥网络]]:Docker 为每个自定义网络分配的内部网桥 IP,容器可通过该 IP 访问宿主机服务 - [[反向代理]]:Caddy 作为反向代理,将外部 HTTPS 请求转发到本地 5678 端口的 n8n 服务 ## Key Entities - [[n8n]]:开源工作流自动化平台,本文档详细说明其 Docker 容器化部署配置 - [[Docker]]:容器化平台,用于运行 n8n 及其依赖服务 - [[V2Ray/Tuic]]:SOCKS5 代理服务,运行在宿主机端口 10808,为 n8n 容器提供科学上网能力 - [[Caddy]]:自动 HTTPS 的反向代理服务器,将外部 HTTPS 请求转发到 n8n Web UI ## Connections - [[n8n-configure-telegram-trigger]] ← extends ← [[n8n Docker 安装与更新]](本文档提供 n8n Docker 基础部署,Telegram Trigger 是在此基础上的集成配置) - [[n8n-workflow-orchestration]] ← depends_on ← [[n8n Docker 安装与更新]](Docker 部署是工作流编排的基础设施) - [[openclaw-n8n-stack]] ← extends ← [[n8n Docker 安装与更新]](openclaw-n8n-stack 是社区维护的 Docker Compose 堆栈,扩展了本文档的单容器部署模式) ## Contradictions - 无已知冲突