Last updated by bot: 2024-12-20
The latest
tag is currently:
- Node.js: 22.x
- npm: 10.x
- yarn: stable
- Python: latest
- pip: latest
- pipenv: latest
- poetry: latest
- uv: latest
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.1 | 23.5.0 | bookworm |
python3.13-nodejs23-bullseye |
3.13.1 | 23.5.0 | bullseye |
python3.13-nodejs23-slim |
3.13.1 | 23.5.0 | slim |
python3.13-nodejs23-alpine |
3.13.1 | 23.5.0 | alpine |
python3.13-nodejs22 |
3.13.1 | 22.12.0 | bookworm |
python3.13-nodejs22-bullseye |
3.13.1 | 22.12.0 | bullseye |
python3.13-nodejs22-slim |
3.13.1 | 22.12.0 | slim |
python3.13-nodejs22-alpine |
3.13.1 | 22.12.0 | alpine |
python3.13-nodejs20 |
3.13.1 | 20.18.1 | bookworm |
python3.13-nodejs20-bullseye |
3.13.1 | 20.18.1 | bullseye |
python3.13-nodejs20-slim |
3.13.1 | 20.18.1 | slim |
python3.13-nodejs20-alpine |
3.13.1 | 20.18.1 | alpine |
python3.13-nodejs18 |
3.13.1 | 18.20.5 | bookworm |
python3.13-nodejs18-bullseye |
3.13.1 | 18.20.5 | bullseye |
python3.13-nodejs18-slim |
3.13.1 | 18.20.5 | slim |
python3.13-nodejs18-alpine |
3.13.1 | 18.20.5 | alpine |
python3.12-nodejs23 |
3.12.8 | 23.5.0 | bookworm |
python3.12-nodejs23-bullseye |
3.12.8 | 23.5.0 | bullseye |
python3.12-nodejs23-slim |
3.12.8 | 23.5.0 | slim |
python3.12-nodejs23-alpine |
3.12.8 | 23.5.0 | alpine |
python3.12-nodejs22 |
3.12.8 | 22.12.0 | bookworm |
python3.12-nodejs22-bullseye |
3.12.8 | 22.12.0 | bullseye |
python3.12-nodejs22-slim |
3.12.8 | 22.12.0 | slim |
python3.12-nodejs22-alpine |
3.12.8 | 22.12.0 | alpine |
python3.12-nodejs20 |
3.12.8 | 20.18.1 | bookworm |
python3.12-nodejs20-bullseye |
3.12.8 | 20.18.1 | bullseye |
python3.12-nodejs20-slim |
3.12.8 | 20.18.1 | slim |
python3.12-nodejs20-alpine |
3.12.8 | 20.18.1 | alpine |
python3.12-nodejs18 |
3.12.8 | 18.20.5 | bookworm |
python3.12-nodejs18-bullseye |
3.12.8 | 18.20.5 | bullseye |
python3.12-nodejs18-slim |
3.12.8 | 18.20.5 | slim |
python3.12-nodejs18-alpine |
3.12.8 | 18.20.5 | alpine |
python3.11-nodejs23 |
3.11.11 | 23.5.0 | bookworm |
python3.11-nodejs23-bullseye |
3.11.11 | 23.5.0 | bullseye |
python3.11-nodejs23-slim |
3.11.11 | 23.5.0 | slim |
python3.11-nodejs23-alpine |
3.11.11 | 23.5.0 | alpine |
python3.11-nodejs22 |
3.11.11 | 22.12.0 | bookworm |
python3.11-nodejs22-bullseye |
3.11.11 | 22.12.0 | bullseye |
python3.11-nodejs22-slim |
3.11.11 | 22.12.0 | slim |
python3.11-nodejs22-alpine |
3.11.11 | 22.12.0 | alpine |
python3.11-nodejs20 |
3.11.11 | 20.18.1 | bookworm |
python3.11-nodejs20-bullseye |
3.11.11 | 20.18.1 | bullseye |
python3.11-nodejs20-slim |
3.11.11 | 20.18.1 | slim |
python3.11-nodejs20-alpine |
3.11.11 | 20.18.1 | alpine |
python3.11-nodejs18 |
3.11.11 | 18.20.5 | bookworm |
python3.11-nodejs18-bullseye |
3.11.11 | 18.20.5 | bullseye |
python3.11-nodejs18-slim |
3.11.11 | 18.20.5 | slim |
python3.11-nodejs18-alpine |
3.11.11 | 18.20.5 | alpine |
python3.10-nodejs23 |
3.10.16 | 23.5.0 | bookworm |
python3.10-nodejs23-bullseye |
3.10.16 | 23.5.0 | bullseye |
python3.10-nodejs23-slim |
3.10.16 | 23.5.0 | slim |
python3.10-nodejs23-alpine |
3.10.16 | 23.5.0 | alpine |
python3.10-nodejs22 |
3.10.16 | 22.12.0 | bookworm |
python3.10-nodejs22-bullseye |
3.10.16 | 22.12.0 | bullseye |
python3.10-nodejs22-slim |
3.10.16 | 22.12.0 | slim |
python3.10-nodejs22-alpine |
3.10.16 | 22.12.0 | alpine |
python3.10-nodejs20 |
3.10.16 | 20.18.1 | bookworm |
python3.10-nodejs20-bullseye |
3.10.16 | 20.18.1 | bullseye |
python3.10-nodejs20-slim |
3.10.16 | 20.18.1 | slim |
python3.10-nodejs20-alpine |
3.10.16 | 20.18.1 | alpine |
python3.10-nodejs18 |
3.10.16 | 18.20.5 | bookworm |
python3.10-nodejs18-bullseye |
3.10.16 | 18.20.5 | bullseye |
python3.10-nodejs18-slim |
3.10.16 | 18.20.5 | slim |
python3.10-nodejs18-alpine |
3.10.16 | 18.20.5 | alpine |
python3.9-nodejs23 |
3.9.21 | 23.5.0 | bookworm |
python3.9-nodejs23-bullseye |
3.9.21 | 23.5.0 | bullseye |
python3.9-nodejs23-slim |
3.9.21 | 23.5.0 | slim |
python3.9-nodejs23-alpine |
3.9.21 | 23.5.0 | alpine |
python3.9-nodejs22 |
3.9.21 | 22.12.0 | bookworm |
python3.9-nodejs22-bullseye |
3.9.21 | 22.12.0 | bullseye |
python3.9-nodejs22-slim |
3.9.21 | 22.12.0 | slim |
python3.9-nodejs22-alpine |
3.9.21 | 22.12.0 | alpine |
python3.9-nodejs20 |
3.9.21 | 20.18.1 | bookworm |
python3.9-nodejs20-bullseye |
3.9.21 | 20.18.1 | bullseye |
python3.9-nodejs20-slim |
3.9.21 | 20.18.1 | slim |
python3.9-nodejs20-alpine |
3.9.21 | 20.18.1 | alpine |
python3.9-nodejs18 |
3.9.21 | 18.20.5 | bookworm |
python3.9-nodejs18-bullseye |
3.9.21 | 18.20.5 | bullseye |
python3.9-nodejs18-slim |
3.9.21 | 18.20.5 | slim |
python3.9-nodejs18-alpine |
3.9.21 | 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.
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.
# 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
FROM nikolaik/python-nodejs:latest
USER pn
WORKDIR /home/pn/app
All images have a default user pn
with uid 1000 and gid 1000.
This is experimental and might break from time to time. Use at your own risk!