Skip to content

Latest commit

 

History

History
161 lines (136 loc) · 6.84 KB

README.md

File metadata and controls

161 lines (136 loc) · 6.84 KB

🐳 Python with Node.js

Pulls CircleCI

Last updated by bot: 2024-11-21

The latest tag is currently:

  • Node.js: 22.x
  • npm: 10.x
  • yarn: stable
  • Python: latest
  • pip: latest
  • pipenv: latest
  • poetry: latest
  • uv: latest

🏷 Tags

To use a specific combination of Python and Node.js see the following table of available image tags.

Tag Python version Node.js version Distro
python3.13-nodejs23 3.13.0 23.3.0 bookworm
python3.13-nodejs23-bullseye 3.13.0 23.3.0 bullseye
python3.13-nodejs23-slim 3.13.0 23.3.0 slim
python3.13-nodejs23-alpine 3.13.0 23.3.0 alpine
python3.13-nodejs22 3.13.0 22.11.0 bookworm
python3.13-nodejs22-bullseye 3.13.0 22.11.0 bullseye
python3.13-nodejs22-slim 3.13.0 22.11.0 slim
python3.13-nodejs22-alpine 3.13.0 22.11.0 alpine
python3.13-nodejs20 3.13.0 20.18.1 bookworm
python3.13-nodejs20-bullseye 3.13.0 20.18.1 bullseye
python3.13-nodejs20-slim 3.13.0 20.18.1 slim
python3.13-nodejs20-alpine 3.13.0 20.18.1 alpine
python3.13-nodejs18 3.13.0 18.20.5 bookworm
python3.13-nodejs18-bullseye 3.13.0 18.20.5 bullseye
python3.13-nodejs18-slim 3.13.0 18.20.5 slim
python3.13-nodejs18-alpine 3.13.0 18.20.5 alpine
python3.12-nodejs23 3.12.7 23.3.0 bookworm
python3.12-nodejs23-bullseye 3.12.7 23.3.0 bullseye
python3.12-nodejs23-slim 3.12.7 23.3.0 slim
python3.12-nodejs23-alpine 3.12.7 23.3.0 alpine
python3.12-nodejs22 3.12.7 22.11.0 bookworm
python3.12-nodejs22-bullseye 3.12.7 22.11.0 bullseye
python3.12-nodejs22-slim 3.12.7 22.11.0 slim
python3.12-nodejs22-alpine 3.12.7 22.11.0 alpine
python3.12-nodejs20 3.12.7 20.18.1 bookworm
python3.12-nodejs20-bullseye 3.12.7 20.18.1 bullseye
python3.12-nodejs20-slim 3.12.7 20.18.1 slim
python3.12-nodejs20-alpine 3.12.7 20.18.1 alpine
python3.12-nodejs18 3.12.7 18.20.5 bookworm
python3.12-nodejs18-bullseye 3.12.7 18.20.5 bullseye
python3.12-nodejs18-slim 3.12.7 18.20.5 slim
python3.12-nodejs18-alpine 3.12.7 18.20.5 alpine
python3.11-nodejs23 3.11.10 23.3.0 bookworm
python3.11-nodejs23-bullseye 3.11.10 23.3.0 bullseye
python3.11-nodejs23-slim 3.11.10 23.3.0 slim
python3.11-nodejs23-alpine 3.11.10 23.3.0 alpine
python3.11-nodejs22 3.11.10 22.11.0 bookworm
python3.11-nodejs22-bullseye 3.11.10 22.11.0 bullseye
python3.11-nodejs22-slim 3.11.10 22.11.0 slim
python3.11-nodejs22-alpine 3.11.10 22.11.0 alpine
python3.11-nodejs20 3.11.10 20.18.1 bookworm
python3.11-nodejs20-bullseye 3.11.10 20.18.1 bullseye
python3.11-nodejs20-slim 3.11.10 20.18.1 slim
python3.11-nodejs20-alpine 3.11.10 20.18.1 alpine
python3.11-nodejs18 3.11.10 18.20.5 bookworm
python3.11-nodejs18-bullseye 3.11.10 18.20.5 bullseye
python3.11-nodejs18-slim 3.11.10 18.20.5 slim
python3.11-nodejs18-alpine 3.11.10 18.20.5 alpine
python3.10-nodejs23 3.10.15 23.3.0 bookworm
python3.10-nodejs23-bullseye 3.10.15 23.3.0 bullseye
python3.10-nodejs23-slim 3.10.15 23.3.0 slim
python3.10-nodejs23-alpine 3.10.15 23.3.0 alpine
python3.10-nodejs22 3.10.15 22.11.0 bookworm
python3.10-nodejs22-bullseye 3.10.15 22.11.0 bullseye
python3.10-nodejs22-slim 3.10.15 22.11.0 slim
python3.10-nodejs22-alpine 3.10.15 22.11.0 alpine
python3.10-nodejs20 3.10.15 20.18.1 bookworm
python3.10-nodejs20-bullseye 3.10.15 20.18.1 bullseye
python3.10-nodejs20-slim 3.10.15 20.18.1 slim
python3.10-nodejs20-alpine 3.10.15 20.18.1 alpine
python3.10-nodejs18 3.10.15 18.20.5 bookworm
python3.10-nodejs18-bullseye 3.10.15 18.20.5 bullseye
python3.10-nodejs18-slim 3.10.15 18.20.5 slim
python3.10-nodejs18-alpine 3.10.15 18.20.5 alpine
python3.9-nodejs23 3.9.20 23.3.0 bookworm
python3.9-nodejs23-bullseye 3.9.20 23.3.0 bullseye
python3.9-nodejs23-slim 3.9.20 23.3.0 slim
python3.9-nodejs23-alpine 3.9.20 23.3.0 alpine
python3.9-nodejs22 3.9.20 22.11.0 bookworm
python3.9-nodejs22-bullseye 3.9.20 22.11.0 bullseye
python3.9-nodejs22-slim 3.9.20 22.11.0 slim
python3.9-nodejs22-alpine 3.9.20 22.11.0 alpine
python3.9-nodejs20 3.9.20 20.18.1 bookworm
python3.9-nodejs20-bullseye 3.9.20 20.18.1 bullseye
python3.9-nodejs20-slim 3.9.20 20.18.1 slim
python3.9-nodejs20-alpine 3.9.20 20.18.1 alpine
python3.9-nodejs18 3.9.20 18.20.5 bookworm
python3.9-nodejs18-bullseye 3.9.20 18.20.5 bullseye
python3.9-nodejs18-slim 3.9.20 18.20.5 slim
python3.9-nodejs18-alpine 3.9.20 18.20.5 alpine

Lovely! These tags are kept updated automatically when new minor or patch version are released. The python script in src/docker_python_nodejs handling this is run twice a day on GitHub actions.

Image tags are built for linux/amd64 and linux/arm64 platforms, except for alpine which is only linux/amd64. See issue #70 for details.

Supported versions

Python version Start End
3.13 2024-10-07 2029-10
3.12 2023-10-02 2028-10
3.11 2022-10-24 2027-10
3.10 2021-10-04 2026-10
3.9 2020-10-05 2025-10
Node.js version Start End
v23 2024-10-16 2025-06-01
v22 2024-04-24 2027-04-30
v20 2023-04-18 2026-04-30
v18 2022-04-19 2025-04-30

Versions are kept up to date using official sources. For Python we scrape the Supported Versions table at devguide.python.org/versions and for Node.js we fetch the release schedule JSON from github.com/nodejs/Release.

Typical tasks

# Pull from Docker Hub
docker pull nikolaik/python-nodejs:latest
# Build from GitHub
docker build -t nikolaik/python-nodejs github.com/nikolaik/docker-python-nodejs
# Run image
docker run -it nikolaik/python-nodejs bash

Use as base image

FROM nikolaik/python-nodejs:latest

USER pn
WORKDIR /home/pn/app

All images have a default user pn with uid 1000 and gid 1000.

Disclaimer

This is experimental and might break from time to time. Use at your own risk!