Convenience images for running Node.js Circle CI builds
List of image tags:
| Tag | Based on | Description |
|---|---|---|
| 24 | cimg/node:24.22 | Node.js 24.22, pnpm (Corepack), Bun, Kiota, gettext-base. Supports buildx used by aws-ecr orb. |
| 26 | cimg/node:26.12 | Node.js 26.12, pnpm/yarn (preinstalled — no Corepack), Bun, Kiota, gettext-base. Supports buildx used by aws-ecr orb. |
Both tools are installed on PATH for the default circleci user (CircleCI’s Node image convention).
--install-directory ~/bin (i.e. /home/circleci/bin on this image).circleci, not root. A plain corepack enable wants to write shims under /usr/local/bin, which is root-owned, so enabling Corepack for pnpm/yarn into ~/bin avoids permission errors without relying on sudo in that step.cimg/node:26.x ships pnpm and yarn preinstalled globally under /usr/local/bin instead — there is no Corepack step to run.pnpm / pnpx from the pruned monorepo as usual. On tag 24, version follows Corepack’s resolution (see packageManager in your repo); on tag 26+, version follows whatever cimg/node bundles.BUN_INSTALL=/usr/local/bun; the directory is created and chown’d to circleci so the runtime can live under a fixed /usr/local/... path while still being writable by the job user.~/bin: Keeps Bun separate from Corepack’s shims in ~/bin, avoids name clashes, and gives one obvious prefix (/usr/local/bun) for the binary and caches.bun ./scripts/ci-task.ts without tsc or node --experimental-strip-types. Pin is BUN_VERSION in each version directory's Dockerfile (Renovate: oven-sh/bun).Bun does not replace pnpm for installing workspace dependencies unless your pipeline calls bun explicitly.
Content type
Image
Digest
sha256:4b6bf7547…
Size
596.2 MB
Last updated
7 days ago
docker pull tibber/ci-image-nodejs:26