Node-RED 3.0.0-beta.3 Docker containers dropping Python2

As part of the updates for 3.0.0 the docker builds were updated to build against the NodeJS container node:16-alpine (and similarly for NodeJS 14 and 18). These containers track the latest Alpine base container to ensure they pick up all the latest updates.

These containers are now based on Alpine 3.16. As part of the move from 3.15 to 3.16 Alpine has dropped Python2.

Python2 went EoL in April 2020 and as such enough time should have passed for everybody to move up to using Python 3.

As Node-RED 3.0.0 is a major version change and as such can contain breaking changes we will be honouring this change and also dropping Python2 support in the Docker containers. It is possible that this may break some nodes.

If you find a broken node please raise an issue against the node to get it updated (it may well be a native dependency that needs updating). If needed you can continue to run on Node-RED 2.2.2 until it is fixed, or you can build a custom Node-RED container based on Debian Buster rather than Alpine that will still contain Python2 (for now). Instructions for building Debian based containers are in the node-red/node-red-docker README.md on github.

You can try the new 3.0.0-beta.3 builds as nodered/node-red-dev:v3.0.0-beta.3 (and similar tags on docker hub Docker Hub)

6 Likes

Is there a command I can run to revert to beta2?

Considering the containers are all explicitly tagged (none are tagged as latest or beta), you should just need to stop the beta.3 container and restart using the beta.2 tagged container

Sorry wrong thread - will repost in correct thread!