Personal multi-arch development container image for TypeScript, Bun, Python, uv, pnpm, and Pi.
The image is intentionally small in scope: it starts from the official TypeScript/Node Dev Containers image and only bakes in the missing tools used across projects.
ghcr.io/andreichenchik/devcontainer:latest
Published platforms:
linux/amd64
linux/arm64
- Node.js, npm, TypeScript, Python, and pnpm from
mcr.microsoft.com/devcontainers/typescript-node:24-trixie uvanduvxfromghcr.io/astral-sh/uv:latestbunandbunxfromoven/bun:1pifrom@earendil-works/pi-coding-agent
The Dockerfile does not set USER; it relies on upstream Dev Containers metadata, which uses node as the remote user.
Minimal .devcontainer/devcontainer.json:
{
"image": "ghcr.io/andreichenchik/devcontainer:latest"
}For projects that mount the personal Pi snapshot:
{
"image": "ghcr.io/andreichenchik/devcontainer:latest",
"workspaceMount": "source=${localWorkspaceFolder},target=/workspace,type=bind",
"workspaceFolder": "/workspace",
"mounts": [
"source=${localEnv:HOME}/.pi/container-agent,target=/mnt/pi-container-agent,type=bind,readonly"
],
"containerEnv": {
"PI_CODING_AGENT_SESSION_DIR": "/workspace/.pi/sessions"
},
"postCreateCommand": "/mnt/pi-container-agent/devcontainer-setup.sh"
}docker run --rm ghcr.io/andreichenchik/devcontainer:latest bash -lc '
node --version &&
npm --version &&
tsc --version &&
python3 --version &&
pnpm --version &&
uv --version &&
uvx --version &&
bun --version &&
bunx --version &&
pi --version
'docker build -t ghcr.io/andreichenchik/devcontainer:latest .