n8n/docker/images/runners
Mike Repeć b54c9b6a95
Some checks are pending
Build: Benchmark Image / build (push) Waiting to run
CI: Master (Build, Test, Lint) / Build for Github Cache (push) Waiting to run
CI: Master (Build, Test, Lint) / Unit tests (24.18.1) (push) Waiting to run
CI: Master (Build, Test, Lint) / Unit tests (26.5.1) (push) Waiting to run
CI: Master (Build, Test, Lint) / Lint (push) Waiting to run
CI: Master (Build, Test, Lint) / Performance (push) Waiting to run
CI: Master (Build, Test, Lint) / Verify single-instance deps (npm-install) (push) Waiting to run
CI: Master (Build, Test, Lint) / Notify Slack on failure (push) Blocked by required conditions
fix: Copy glibc into distroless runners image as a matched pair (#37149)
Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
Co-authored-by: Matsu <matias.huhta@n8n.io>
2026-08-26 16:21:34 +01:00
..
Dockerfile build: Move the n8n and runners images onto n8nio/base:26.7.0 (#36990) 2026-08-25 08:26:08 +00:00
Dockerfile.distroless fix: Copy glibc into distroless runners image as a matched pair (#37149) 2026-08-26 16:21:34 +01: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.