Docker

This is how you could install and run Niagara 4 in docker.

Please download Niagara and copy it to /tmp/ or other locations specified by the -v parameter on the host.

Please modify MAC address and IP address. The values below is for reference only.

Replace x.x.x.x with your Niagara version.

Create a initial instance of Centos 7 to install Niagara.
% docker run --name niagara-temp -v /tmp:/docker -t -i centos:7 /bin/bash

Install the required packages.
% yum install unzip sudo rsync libselinux-utils dos2unix

Download Niagara and install.
% cd /root
% mkdir niagara
% cd niagara
% unzip "/docker/Tridium_N4_Supervisor_(Linux_x64)-x.x.x.x.zip"
% sudo bash install.sh
Follow the installation. Then finally delete the installation files in /root.
% rm -Rf niagara

We need to remove a few files in order for Niagara to be able to license and set a new system passphrase in Workbench later.
% rm /home/niagara/Niagara.x.x/tridium/* /opt/Niagara/Niagara-x.x.x.x/etc/.paddr /etc/niagara/.sp

Set your prefered timezone
% cd /etc
% rm localtime
% ln -s ../usr/share/zoneinfo/Europe/Oslo localtime

Exit shell and commit image:
% exit
% docker commit niagara-temp niagara:x.x.x.x
% docker rm niagara-temp

Run our Niagara image:
% docker run --name niagara-4.6.96.28 --mac-address 00-28-93-24-86-E1 -p 5011:5011 -p 4911:4911 -p 8443:8443 -t -i niagara:4.6.96.28 su -l niagara -s /bin/bash -c "LD_LIBRARY_PATH=/opt/Niagara/Niagara-4.6.96.28/jre/lib/amd64:/opt/Niagara/Niagara-4.6.96.28/bin /opt/Niagara/Niagara-4.6.96.28/bin/niagarad /console"


You may run Niagara image with more advanced settings. See bellow for example:
% docker run --name niagara-4.6.96.28 --mac-address 00-28-93-24-86-E1  --net suphammer-lan2 --ip 192.168.123.46 --device=/dev/ttyACM0 --device=/dev/ttyUSB0 -p 5011:5011 -p 4911:4911 -p 8443:8443 -t -i niagara:4.6.96.28 su -l niagara -s /bin/bash -c "LD_LIBRARY_PATH=/opt/Niagara/Niagara-4.6.96.28/jre/lib/amd64:/opt/Niagara/Niagara-4.6.96.28/bin /opt/Niagara/Niagara-4.6.96.28/bin/niagarad /console"