Skip to content

Node RED Docker Release Process

Ben Hardill edited this page Jul 1, 2021 · 7 revisions

This page describes the release process of the Node-RED Docker images and manifest list and is intended for the maintainers of Node-RED Docker images.

GitHub Actions CI

For the build and publish process the Node-RED Docker project uses GitHub Actions. This is triggered by tagging a new release.

When a new tag is created the GitHub Action will fire and build and publish the Docker containers to the Docker Hub.

Publishing to Docker Hub

To publish Node-RED Docker images and associated manifest lists to Docker Hub a release must be created (manually) on the GitHub Node-RED Releases page.

Docker Hub Node-RED Repositories

There are two Node-RED Repositories available, resp. nodered/node-red and nodered/node-red-dev.

  • nodered/node-red is where stable images and manifest lists are stored.
  • nodered/node-red-dev is where unstable images and manifest lists are stored and used for testing purpose only.

Tag Version Naming Convention

  • A tag version should always start with a v, this triggers Travis CI to build the images and manifest lists and publish them to Docker Hub.
  • When the tag contains only numbers, dots and/or dashes a stable release is assumed and images and manifest lists are published to nodered/node-red.
  • When the tag contains beta then images and manifest lists are tagged as beta and published to nodered/node-red-dev.
  • For all other tags images and manifest lists are tagged as test and published to nodered/node-red-dev.

Examples:

Github Tag Docker Hub Tag Repo
v1.0.2 - This tag does not contain characters, so a stable release is assumed. nodered/node-red
- images are tagged by its version v1.0.2 and manifest lists are tagged by latest
v1.0 - This tag does not contain characters, so a stable release is assumed. nodered/node-red
- images are tagged by it's version 1.0 and manifest lists are tagged by latest
v1.0-test.1 - This tag does contain test, so a test release is assumed. nodered/node-red-dev
- images are tagged by it's version 1.0-test.1 and manifest lists are tagged by test
v1.0-beta.4 - This tag does contain beta, so a beta release is assumed. nodered/node-red-dev
- images are tagged by it's version 1.0-beta.4 and manifest lists are tagged by beta
v1.0A - This tag does contain a character, so a test release is assumed. nodered/node-red-dev
- images are tagged by it's version 1.0A and manifest lists are tagged by test
v1.0.0-i386 - This tag does contain characters, so a test release is assumed. nodered/node-red-dev
- images are tagged by it's version 1.0.0-i386 and manifest lists are tagged by test

beta

The aim of beta is to release a beta version of Node-RED Docker images and manifest list, to test the images and manifest lists. These images and manifest lists are closer to a final release and not advised to be used in a production environment. Curious users can help test these images and manifest lists and raise there issues on GitHub. The version of Node-RED in the package.json must contain beta.

test

The aim of test is to release a test version of Node-RED Docker images and manifest list, to test the images and manifest lists. These images and manifest lists are far from stable and not advised to be used in a production environment. test can be seen as alpha. Curious users can help test these images and manifest lists and raise their issues on GitHub. The version of Node-RED in the package.json does not necessarily has to contain beta.