No description
  • Dockerfile 80%
  • Shell 20%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Karel Smutný 55a9cc4a06
All checks were successful
Publish development images / publish (push) Successful in 2m50s
Stream offline fixtures when checking sibling containers
2026-10-08 12:56:07 +02:00
.forgejo/workflows Prewarm pinned Node and pnpm in development images 2026-10-08 12:51:34 +02:00
base Prewarm pinned Node and pnpm in development images 2026-10-08 12:51:34 +02:00
playwright Upgrade Playwright to 1.63.0 2026-09-24 19:18:04 +02:00
podman dev-podman OverlayFS 2026-09-02 16:04:59 +02:00
scripts Stream offline fixtures when checking sibling containers 2026-10-08 12:56:07 +02:00
.editorconfig Repository text conventions 2026-09-02 16:04:58 +02:00
.gitattributes Repository text conventions 2026-09-02 16:04:58 +02:00
LICENSE-MIT LICENSE-MIT 2026-09-02 16:04:58 +02:00
README.md Stream offline fixtures when checking sibling containers 2026-10-08 12:56:07 +02:00

Development images

ProductTeams.ai Node.js development images for Docker and Coder.

Image Purpose
dev-node Node.js managed by Vite+
dev-podman dev-node with rootless Podman for nested containers
dev-playwright dev-podman with Chromium for the pinned Playwright version

Quick start

docker run --rm -it \
  --mount source=dev-node-home,target=/home/dev \
  git.productteams.ai/aippt/dev-node:0 \
  zsh

For dev-playwright, pin the project's @playwright/test version to PLAYWRIGHT_VERSION in playwright/Dockerfile. Chromium is already installed.

Node.js and the pinned pnpm version are downloaded into /opt/vite-plus when the image is built. They remain available when Coder mounts a fresh persistent home. After changing tool versions, update the fixture in scripts/check-offline-tools.sh and verify each image without network access:

bash scripts/check-offline-tools.sh git.productteams.ai/aippt/dev-node:0.2.2
bash scripts/check-offline-tools.sh git.productteams.ai/aippt/dev-playwright:0.2.2

All images configure the official PostgreSQL Apt repository without installing a client. Projects can install the client major they require, for example:

sudo apt-get update
sudo apt-get install --yes --no-install-recommends postgresql-client-18

dev-podman runs trusted nested containers without privileged mode, extra capabilities, or device mappings. The outer development container must disable its seccomp profile:

docker run --rm -it \
  --security-opt seccomp=unconfined \
  --security-opt apparmor=unconfined \
  --security-opt systempaths=unconfined \
  git.productteams.ai/aippt/dev-podman:0 \
  zsh

Nested containers share the development container's network namespace and use native rootless OverlayFS storage under the persistent home directory.

Release

git tag vX.Y.Z
git push origin vX.Y.Z

Forgejo publishes X.Y.Z, X.Y, and X tags for all the images, plus pw-<PLAYWRIGHT_VERSION> for dev-playwright. There is no latest.

References