解決方案

EAI_AGAIN:Docker build 階段 DNS 解析不穩

docker-compose.yml 文件中添加 network: host 配置以固定 DNS 解析。若公司內部有特殊 DNS 設置,請優先採用公司規定的 DNS 配置。
DNS配置示意图

Module ‘ioredis’ is disallowed:n8n Function/Code 節點限制外部套件

請在docker-compose.yml新增以下env

- NODE_PATH=/usr/local/lib/node_modules
- NODE_FUNCTION_ALLOW_EXTERNAL=ioredis
- NODE_FUNCTION_ALLOW_BUILTIN=*

注意事項:

  • 配置 Node.js 模塊路徑及權限設置
  • 關鍵參數為 NODE_FUNCTION_ALLOW_BUILTIN,而非 N8N_NODE_FUNCTION_ALLOW_BUILTIN,請留意區分

測試方法

1. 驗證容器內模塊安裝

docker exec -it <n8n-container> sh
npm root -g
ls -l /home/node/.n8n/node_modules/ioredis || true

2. 測試 Node.js 模塊加載

ioredis 模塊為例,執行以下命令應返回 true

node -e "console.log(!!require('ioredis'))"
Logo

开源鸿蒙跨平台开发社区汇聚开发者与厂商,共建“一次开发,多端部署”的开源生态,致力于降低跨端开发门槛,推动万物智联创新。

更多推荐