Install with executable binary
3 minute read
Install on Linux - Executable Binary
Steps to install the executable binary on your linux machine
Download Options
Choose the right executable bundle
Download the executable bundle that matches to your operating system architecture
Architectures
linux-arm
- 32 bit ARM Linuxlinux-arm64
- 64 bit ARM Linuxlinux-386
- 32 bit Linuxlinux-amd64
- 64 bit Linuxwindows-386
- 32 bit Windowswindows-amd64
- 64 bit Windows
Download
- Here we are focusing on
arm
architecture (Raspberry Pi). You can follows this guide for other architecture too. - Download mycontroller-server-2.0.0-linux-arm.tar.gz
Note
MyController server does not require root access, But for some devices(serial port, monitoring system resources, etc.,) it may required root access.If you want to run MyController server with
root
, you should include sudo
in the beginning of the commands. or directly run the commands as root
user.
- create a directories to keep MyController server data and executable
mkdir -p /opt/apps/mycontroller/mc_home # directory to hold data mkdir -p /opt/apps/mycontroller/executable # directory to hold executable # create directories to keep image files to show it MyController dashboard # Example, camera stream image mkdir -p /opt/apps/mycontroller/mc_home/secure_share mkdir -p /opt/apps/mycontroller/mc_home/insecure_share # download the bundle and extract on executable directory cd /opt/apps/mycontroller wget https://github.com/mycontroller-org/server/releases/download/v2.0.0/mycontroller-server-2.0.0-linux-arm.tar.gz tar xzf mycontroller-server-2.0.0-linux-arm.tar.gz --strip-components=1 --directory /opt/apps/mycontroller/executable
- now we have isolated MyController server data and executables, the expected result will be as follows,
- NOTE: still, we have to keep the configuration file (
mycontroller.yaml
) file on the executable directory$ ls /opt/apps/mycontroller/mc_home # MyController server data location insecure_share secure_share $ ls /opt/apps/mycontroller/executable # MyController server executable location LICENSE.txt logs mcctl.sh mycontroller-server mycontroller.yaml README.txt web_console
Update mycontroller.yaml file
-
IMPORTANT: update your secret on the
mycontroller.yaml
file. DO NOT USE THE DEFAULT SECRET -
secret can between 1 to 32 characters length
-
This secret used to encrypt your third party password, tokens used on this server
secret: 5a2f6ff25b0025aeae12ae096363b51a # !!! WARNING: CHANGE THIS SECRET !!!
-
update influxdb configuration as follows in your
mycontroller.yaml
- prior to this step, influxdb should be installed and running with a database called mycontroller in influxdb
- Influxdb installation guide
- IMPORTANT
uri
- must point to the influxdb ip address. if you have installed on the same host, you can leave it as127.0.0.1
- update other fields as per your influxdb setup
database: metric: disabled: false type: influxdb uri: http://127.0.0.1:8086 # must be updated with your host ip address token: username: password: organization_name: bucket_name: mycontroller batch_size: flush_interval: 5s
-
if you plan to use https with ACME(Letsencrypt) follow the detailed guide
-
Optional - if you plan to use external bus, update
bus
configuration as follows in yourmycontroller.yaml
- nats.io server should be installed and running
- nats.io server installation guide
- IMPORTANT
server_url
- must point to the nats.io server ip address. if you have installed on the same host, leave it as127.0.0.1
bus: type: natsio topic_prefix: mc_server server_url: nats://127.0.0.1:4222 # must be updated with your host ip address insecure: false connection_timeout: 10s
-
Start the MyController server
cd /opt/apps/mycontroller executable/mcctl.sh start
-
Access MyController server Web UI
- http:
http://<host-ip>:8080
(example: http://192.168.1.21:8080) - https:
https://<host-ip>:8443
(example: https://192.168.1.21:8443)
- http:
To see the logs
- MyController log file is placed in the
executable
directorycd /opt/apps/mycontroller cat executable/logs/mycontroller.log
- Prints and tails the logs, to get exit do
Ctrl+C
cd /opt/apps/mycontroller tail --follow executable/logs/mycontroller.log
Stop
cd /opt/apps/mycontroller
executable/mcctl.sh stop
Restart
cd /opt/apps/mycontroller
executable/mcctl.sh stop
executable/mcctl.sh start
Uninstall from your system
cd /opt/apps/mycontroller
executable/mcctl.sh stop
rm /opt/apps/mycontroller/executable --recursive --force
Last modified March 20, 2023: update version details (46b10eb)