docker内的n8n配置Code节点运行python代码

官方文档请参考:https://docs.n8n.io/hosting/configuration/task-runners/#setting-up-external-mode

配置docker-compose.yml文件

bash 复制代码
cd ~
mkdir n8n_python # 创建一个空文件夹
cd n8n_python
vim docker-compose.yml # 新建一个文件(固定文件名)

在文件中写入:

yml 复制代码
version: '3.8'

services:
  # 这是n8n主程序
  n8n:
    image: docker.1panel.live/n8nio/n8n:latest  # 博主的镜像源
    container_name: n8n # 创建的n8n容器名
    restart: unless-stopped # 自动重启
    ports:
      - "5678:5678" # 端口映射
    volumes:
      - n8n_data:/home/node/.n8n  # 数据持久化到本地,以后删了容器也不影响数据
    environment:
      - N8N_SECURE_COOKIE=false # 无需 https登录
      - N8N_BLOCK_EXTERNAL_CODE_EXECUTION=false
      # 为 Python 运行器新增的配置
      - N8N_RUNNERS_ENABLED=true
      - N8N_RUNNERS_MODE=external
      - N8N_RUNNERS_BROKER_LISTEN_ADDRESS=0.0.0.0
      - N8N_RUNNERS_AUTH_TOKEN=y3Jo)8)TUu&eZ;]5+RpP}$ushSbHhvX-(BIdt  # 改成你自己的密码
      - N8N_NATIVE_PYTHON_RUNNER=true

  # 这是专门为 Python 准备的"小助手"容器
  task-runners:
    image: docker.1panel.live/n8nio/runners:latest  # 镜像源保持一致
    container_name: n8n-runners
    restart: unless-stopped
    environment:
      - N8N_RUNNERS_TASK_BROKER_URI=http://n8n:5679  # 用容器名n8n来寻址
      - N8N_RUNNERS_AUTH_TOKEN=y3Jo)8)TUu&eZ;]5+RpP}$ushSbHhvX-(BIdt  # 必须和上面的密码一模一样
    depends_on:
      - n8n

volumes:
  n8n_data:
      external: true # 复用原来已有的数据卷,工作流和设置不会丢

然后保存文件,直接运行:

bash 复制代码
docker compose up -d

等待下载完成后,容器会自动启动

进入n8n验证

Code节点使用默认的就可以:

py 复制代码
for item in _items:
  item["json"]["my_new_field"] = 1
return _items

正常运行即可!

相关推荐
Alan_69127 分钟前
聊聊 Swagger/Postman/Apifox 的真实选型与 Python 项目实战
python·测试工具·postman
智慧物业老杨1 小时前
物业绿化数智化权责管控方案:基于工单平台的双层权限追溯模块落地实践
python
满意的星月2 小时前
基于微服务和Docker容器技术的PaaS云平台架构设计(微服务架构实施原理)
docker·微服务·架构
Metaphor6922 小时前
使用 Python 在 Word 文档中添加批注
python·word
FreakStudio2 小时前
WIZnet 开源方案分享:W55MH32 开发板 + 小智 AI实现以太网版本的小智机器人
python·单片机·嵌入式·大学生·面向对象·并行计算·电子diy·电子计算机
会周易的程序员2 小时前
使用 pybind11 封装 C++ 日志库 microLog 为 Python 模块
java·c++·python·物联网·架构·日志·aiot
一只专注api接口开发的技术猿3 小时前
电商评论自动化监控与情感数据分析完整落地教程(附可直接运行 Python 代码)
大数据·数据库·python·数据分析·自动化
HAPPY酷3 小时前
【ROS2】 Conda 环境搭建(命令行版)
linux·运维·python·ubuntu·机器人·conda
bukeyiwanshui3 小时前
20260624 k8s pod命令
云原生·容器·kubernetes
网络研究院4 小时前
Brave浏览器放大招引入容器功能,实现多账户安全隔离
网络·安全·容器·浏览器·数据·隐私