Node-RED Advent Caldendar 2020 This is an article on 12/18.
What are you doing with Node-RED flow management? I recently started to manage flow files with git.
@ high-u Node-RED Advent Caldendar 2018 article: Are you using git with Node-RED?
And with the intention of setting up a verification environment with the same quality every time, I'm already doing it! I'm sure there are people who say that, but I'm going to summarize it lightly.
I have two repositories. You can put Flow in one repository, but this time it is a derivative version of TJBot, a robot learning kit that runs on Node-RED, Virtual TJBot Project, and runs locally Virtual TJBot-starter- container is introduced as a sample.
repository | Explanation |
---|---|
https://github.com/tjbotfan/virtual-tjbot-handson/ | Node-RED project repository |
https://github.com/tjbotfan/virtual-tjbot-starter-container | Repository with DockerFile |
In https://github.com/tjbotfan/virtual-tjbot-starter-container, in addition to DockerFile, the git submodule links the repository of the Node-RED project.
By making it a submodule, when you git clone it, the contents will be downloaded together, but It is convenient that it is not affected in the submodule at the time of git checkout. (The Node-RED flow is a separate project and management is separate)
When you bring the repository with the Submodule
$ git clone --recursive https://github.com/tjbotfan/virtual-tjbot-starter-container
will do.
The repository after acquisition is as follows.
$ cd virtual-tjbot-starter-container/
$ ls -lR
.:
8 in total
-rw-rw-r--1 phadmin phadmin 1069 December 23 02:17 Dockerfile
-rw-rw-r--1 phadmin phadmin 196 December 23 02:17 README.md
drwxrwxr-x 2 phadmin phadmin 112 December 23 02:18 node-red-settings
./node-red-settings:
44 in total
-rw-rw-r--1 phadmin phadmin 228 December 23 02:18 README.md
-rw-rw-r--1 phadmin phadmin 29165 December 23 02:18 flow.json
-rw-rw-r--1 phadmin phadmin 1 December 23 02:18 flow_cred.json
-rw-rw-r--1 phadmin phadmin 1087 December 23 02:18 package.json
After that, by writing in the Dockerfile to copy flow.json using COPY on the Dockerfile, Every time you build docker, the container will bring you a Flow from the Node-RED repository.
It was more of a container than Node-RED, By making the Node-RED flow into a project, it is easy to manage the version and it can be conveniently used even when containerizing. I wrote it by saying that I don't see a cohesive article.
I'd like to say that I'd like to be able to refer to it as a Node-RED project even from Node-RED started in the container. I would like to take on these challenges.