The project is a containerized package of:
- FRINX ODL
- FRINX fork of Netflix's Conductor
- FRINX Microservices Engine
- Device simulation container
Documentation & Use Cases
- Docker Compose
- License for FRINX ODL (you can find a trial license in the "Installation Guide" section below)
min 16GB RAM & min 4 vCPUs with normal startup, and 5GB RAM & 2 vCPUs with minimal config has been successfully tested for POCs and demos.
- Ubuntu 16.04 / 18.04 /
- docker 18.03.1-ce, v18.06.1-ce
- docker-compose 1.21.2, v1.22.0
To install the Ubuntu repository version, execute the following command
sudo apt-get install docker.io
Check the version with
You'll see output similar to this:
Docker version 18.06.1-ce, build e68fc7a
To install Docker Compose, at first, install the
Type the following apt or apt-get command:
sudo apt install curl
curl, use following command to get Docker Compose:
sudo curl -L "https://github.com/docker/compose/releases/download/1.23.1/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
Note: You can download the latest version of Docker Composer after checking Release Notes https://github.com/docker/compose/releases and finding the latest version, e.g. 1.23.2. Then you can edit the download link release version number to get the latest release.
We offer a one month trial license. No signup needed! License token:
Get the project
Clone the repository:
git clone https://github.com/FRINXio/FRINX-machine.git
Navigate into the project folder:
The installation script
install.sh is in the FRINX-machine folder.
The installation script does the following things:
- Updates project submodules (e.g. conductor)
- Copies license token
- Pulls conductor project parts from maven repository
- Builds conductor-server .jar file
- Pulls and creates docker images
- Creates external volumes for data persistence
We recommend to run the install script as regular user and not as sudo, so all files (e.g. netinfra utils) can be edited by the regular user later.
Installation with the trial license token:
./install.sh -l 0e57a786f7dbd27fa77db684cf3b234d6f23ed784e52cbfb107fd4317ba2646c66f7a141b0e823946d8f9d956852c95d33dc82f945779b1c9969049e94935b2a
The startup script
startup.sh can be found in the FRINX-machine folder.
Here is what it does:
- Creates the docker containers from the images and starts them.
- Imports workflow definitions.
Docker needs privileged mode, so
startup.sh should be executed with sudo. Otherwise it will prompt for password while executing.
Min 16GB RAM & min 4 vCPUs with normal startup are recommended.
sudo ./startup.sh -m
Starts application with lower RAM usage. Min 5GB RAM & min 2 vCPUs with minimal startup are recommended.
teardown.sh script in the FRINX-machine folder:
- Stops and removes containers
- Does not remove external volumes
Using docker, also needs privileged mode:
Removal of external volumes
Caution all data will be lost!
To remove the external volumes use:
sudo docker volume rm redis_data elastic_data
Docker expects external volumes to exist when starting the containers. They can be created with:
sudo docker volume create --name=redis_data sudo docker volume create --name=elastic_data
Once started open your browser and open the following GUIs:
- localhost:5000 --> FRINX workflow GUI
- localhost:5601 --> Kibana (for log and inventory access)
- localhost:8888 --> FRINXit (CLI for FRINX ODL)
Kibana: * localhost:5601