Skip to content

feat(docker): update base container to v26 - #138

Merged
saidsef merged 2 commits into
mainfrom
feat/base-container-node-26
Sep 3, 2026
Merged

feat(docker): update base container to v26#138
saidsef merged 2 commits into
mainfrom
feat/base-container-node-26

Conversation

@saidsef

@saidsef saidsef commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Summary

The image now builds on node:26-alpine3.24 and runs Node 26.8.1. Every ENV moves to the KEY=value form and the old maintainer label gives way to the OCI authors, title and description annotations, which takes docker build --check from six warnings down to one. The build script moves out of the repository root into scripts/.

Related Issues

Fixes #139.

Changes Made

The node:26 images no longer bundle yarn, so the install layer died on yarn: not found before anything else could run. Dependencies install with npm install --omit=dev instead, against the npm 11.19.0 that ships in the base. That also removed yarn check and yarn autoclean, neither of which has an npm equivalent, and npm cache clean --force keeps the layer size where autoclean left it.

The one remaining lint warning is JSONArgsRecommended on CMD. Switching to the JSON form there would stop the shell expanding ${PORT}, so it stays as it is.

Testing

  • docker build - image builds, 100 packages installed
  • docker run then curl /healthz - HTTP 200, {"status":"healthy"}
  • curl / - returns the build ID passed through --build-arg
  • docker exec ... id -un - runs as nobody
  • docker build --check - 1 warning, down from 6 on main

Checklist

  • No workflow or script references the old build.sh path
  • The healthcheck endpoint still answers on the port the image exposes

@saidsef saidsef self-assigned this Sep 2, 2026
@codacy-production

Copy link
Copy Markdown

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

The node:26 images no longer bundle yarn, so the install layer exited 127 on
`yarn: not found` and the image would not build at all. I swapped it for
`npm install --omit=dev`, using the npm 11.19.0 that already ships in the base.

`yarn check` and `yarn autoclean` came out with it. Neither has an npm
equivalent, and there is no lock file under app/ for a check to verify against.
`npm cache clean --force` does what autoclean did for the layer size.
@saidsef saidsef added docker Pull requests that update Docker code enhancement labels Sep 2, 2026
@github-actions github-actions Bot added the preview preview label Sep 2, 2026
@saidsef-pr

saidsef-pr Bot commented Sep 2, 2026

Copy link
Copy Markdown

Application node-webserver-67ec474-138-pr-reviews has been created.

1 similar comment
@saidsef-pr

saidsef-pr Bot commented Sep 2, 2026

Copy link
Copy Markdown

Application node-webserver-67ec474-138-pr-reviews has been created.

@saidsef-pr

saidsef-pr Bot commented Sep 2, 2026

Copy link
Copy Markdown

Application node-webserver-67ec474-138-pr-reviews is now running new version of deployments manifests.
See more here: https://argocd.saidsef.co.uk/applications/node-webserver-67ec474-138-pr-reviews?operation=true

@saidsef
saidsef merged commit 57a5a0d into main Sep 3, 2026
7 checks passed
@saidsef
saidsef deleted the feat/base-container-node-26 branch September 3, 2026 08:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docker Pull requests that update Docker code enhancement preview preview

Projects

None yet

Development

Successfully merging this pull request may close these issues.

chore(docker): update base container and modernise the Dockerfile

1 participant