n8n/docker/images/runners
Declan Carroll b82de23cc4
chore: Bump Node.js from 24.13.1 to 24.14.1 (#27894)
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-01 11:54:03 +00:00
..
Dockerfile chore: Bump Node.js from 24.13.1 to 24.14.1 (#27894) 2026-04-01 11:54:03 +00:00
Dockerfile.distroless chore: Bump Node.js from 24.13.1 to 24.14.1 (#27894) 2026-04-01 11:54:03 +00:00
n8n-task-runners.json fix(core): Preserve NODE_PATH for globally installed npm packages in Docker (#26898) 2026-03-11 16:41:07 +00:00
README.md chore: Remove N8N_RUNNERS_ENABLED env variable (no-changelog) (#23885) 2026-01-12 13:38:33 +00:00

n8n - Task runners (n8nio/runners) - (PREVIEW)

n8nio/runners image includes JavaScript runner, Python runner and Task runner launcher that connects to a Task Broker running on the main n8n instance when running in external mode. This image is to be launched as a sidecar container to the main n8n container.

Task runners are used to execute user-provided code in the Code Node, isolated from the n8n instance.

For official documentation, please see here.

For a distroless variant of this image, see here.

For development purposes only, see below.

Testing locally

1) Make a production build of n8n

pnpm run build:n8n

2) Build the task runners image

docker buildx build \
  -f docker/images/runners/Dockerfile \
  -t n8nio/runners \
  .

3) Start n8n on your host machine with Task Broker enabled

N8N_RUNNERS_MODE=external \
N8N_RUNNERS_AUTH_TOKEN=test \
N8N_LOG_LEVEL=debug \
pnpm start

4) Start the task runner container

docker run --rm -it \
-e N8N_RUNNERS_AUTH_TOKEN=test \
-e N8N_RUNNERS_LAUNCHER_LOG_LEVEL=debug \
-e N8N_RUNNERS_TASK_BROKER_URI=http://host.docker.internal:5679 \
-p 5680:5680 \
n8nio/runners

If you need to add extra dependencies (custom image), follow these instructions.