This is an old revision of the document!
Steps for setting up slow control:
The purpose of this page is to list instructions to create a docker container containing all the tools required to run a slow control system. EPICS is the back-end. It keeps track of the process variables and Handels the communication between the slow control computer and the components of a scientific experimental setup over Local network. Node-RED is the front-end. It interacts with EPICS using EPICS-Python interface. With Node-RED 'flows' and GUI are created.
The following steps are for reference. If the intention is to just set up a slow control without having to go through underlying details, then execute step one and skip to the last command on this page.
1. Installing docker on ubuntu: Open terminal in ubuntu and run the following commands.
$ curl -fsSL https://get.docker.com -o get-docker.sh $ sudo sh get-docker.sh
2. Setup a ubuntu container
$ docker run --it --network host --name slow_control ubuntu bin/bash
Containers are usually completely isolated from the host system. But containers with '–network host' tag share the host network.
3. Access terminal inside the container
$ docker exec -it slow_control bin/bash
4. Install epics using the script on autoinstall page
5. install Node.js
$ curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash - $ sudo apt-get install -y nodejs
5. Install Node-RED
$ sudo npm install -g --unsafe-perm node-red
Now the basic set up is complete
6. create an account in docker-hub https://hub.docker.com/signup and create a repository named “slow_control” 7. Sign into docker using the same account
$ docker login
(you will be prompted form username and password).
8. Create an image of the container that has been created in the previous steps.
$ docker commit slow_control
(you will see a series of alpha-numeric characters after executing this command, this is called a 'tag') Assign a name to the image
$ docker <tag> slow_control:v1
9. Upload the image to repository that was created in step 6
$ docker push <username>/slow_control:v1
Now the image slow_control:v1 can be pulled to any computer and a container can be setup. All the prerequisite are present in this container.
The following command can be executed to setup a container which has already been created.
$ docker run --it --network host --name slow_control ravigmathim/slow_control:v1.2 bin/bash
The 'v1.2' in the 'ravigmathim/slow_control:v1.2' refers to version. It may change.