The base image for the IDEKO VDC which is built with Node-RED and it includes:
- The Throughput Agent
The Dockerfile downloads the Throughput Agent from the official repository and compiles it. Then copies the statically linked executable to a
node-red:slim (alpine) image.
It runs the Throughput Agent as root, then installs the neccesary flows to install the IDEKO VDC, copies the
settings.json files to Node-RED
/data directory and installs
R. Finally, runs Node-red as node-red user.
It also pulls the anomaly detection algorithm from IDEKO's Bitbucket repository, so providing credentials is mandatory on build time.
To run properly, some requirements must be met:
/opt/blueprintwith the Throughput Agent config file:
traffic.json. This passes the container the config file for the Throughput Agent.
- Launch previously the Elasticsearch container that will save the data generated by the Throughput Agent.
How to run the container
docker build -t computation-vdc --build-arg bbuser=<bitbucket-user> --build-arg bbpass=<bitbucket-pass> .
from the folder where the Dockerfile is.
This info is for the Deployment Engine. NOTE: adapt the host paths. NOTE: As the end-users have their own Docker Registry and don't use the one at Docker Hub, the below command must use the ip and port of that registry.
docker run -d -p 1888:1888 --restart unless-stopped -v /HOST/CONFIG/FOLDER:/etc/ditas end-user-registry-ip:port/computation-vdc
Part by part:
1888:1888to map the Node-RED ports.
-v /HOST/CONFIG/FOLDER:/etc/configto provide the
traffic.jsonwith the Throughput Agent config. And perhaps the whole blueprint.