Node.js Knot image with Node, npm and corepack for running JS apps inside Knot spaces.
2.8K
A Node.js development image for knot spaces, combining knot-ubuntu with the official Node.js runtime, npm, and corepack (for pnpm / yarn). It is a pure runtime image — no web server — so you run your own process or app (e.g. node server.js, next dev).
It inherits the full knot entrypoint, runtime user, rsyslog logging and startup-hook framework from knot-ubuntu.
All tags are multi-arch (linux/amd64, linux/arm64); see Docker Hub for the current list.
Node.js is installed from the NodeSource deb repository; the <version> tag is the Node major (e.g. 24), tracking the latest patch of that line. Each release is also tagged <version>-<BUILD_DATE>.
docker run -d \
-e KNOT_SERVER=https://knot.example.com \
-e KNOT_USER=alice \
-v knot_home:/home \
paularlott/knot-node:24
Then, in the space:
npm init -y
npm install express
node -e 'require("express"); console.log("express loaded")'
Or with pnpm (via corepack):
corepack prepare pnpm@latest --activate
pnpm init
Builds on knot-ubuntu:26.04. The latest Node.js <major>.x release is installed from the NodeSource deb repository, and corepack is enabled so pnpm and yarn are available on demand. 24 is the current LTS; 26 is the current release line.
Built on knot-ubuntu, so it supports the common knot variables:
| Variable | Default | Description |
|---|---|---|
KNOT_USER | knot | Runtime user (uid 1000); created if missing |
KNOT_SERVER | (unset) | knot server URL; if set, the agent is downloaded and started |
KNOT_AGENT_ENDPOINT | (unset) | Agent endpoint reported to the server |
KNOT_SPACEID | (unset) | Space identifier |
KNOT_SERVICE_PASSWORD | (auto-generated UUID) | Shared service password |
KNOT_SSHD | (unset) | Set to native to start sshd |
KNOT_SSH_PORT | 2222 | Port for the SSH daemon |
KNOT_SYSLOG_PORT | 1514 | Syslog forward target (0 disables forwarding) |
TZ | Etc/UTC | Timezone |
Node-specific:
| Variable | Default | Description |
|---|---|---|
NODE_MAJOR | (build-time) | The Node.js major version (e.g. 24) |
/home — persistent home directory; node_modules and projects live here.Node.js is MIT. This image's packaging — the Dockerfile and supporting scripts/configs — is Apache License 2.0.
Source: paularlott/knot-base-images.
Content type
Image
Digest
sha256:428593d4b…
Size
256.8 MB
Last updated
about 13 hours ago
docker pull paularlott/knot-node:26-20260929