Always Running Scripts
Contents
1. On Optimus through docker
On the computer optimus mounted at 1X4, following scripts run inside docker containers perpetually:
Name |
Location |
Arguments |
Description |
Docker container name |
|
/opt/rtcds/caltech/c1/Git/40m/scripts/MC/ |
Keeps IMC locked. |
scripts_AL_MC_1 |
|||
/opt/rtcds/caltech/c1/Git/40m/scripts/PSL/PMC/ |
Keeps PMC locked. |
scripts_AL_PMC_1 |
scripts_PID_FSS_Slow_1 |
On the computer megatron mounted at 1X4, following scripts are running as systemd services:
Name |
Location |
Arguments |
Description |
Service name |
/opt/rtcds/caltech/c1/Git/40m/scripts/PSL/FSS/ |
Adjusts Main laser temperature to keep PZT actuation around 0. |
FSSSlow.service |
1.1. Configuration
See docker-compose.yml for how the scripts are configured to run on optimus.
1.2. Start all scripts
* To start all docker script containers, need to first start sot channel docker containers first. ssh to optimus:
> cd /opt/rtcds/caltech/c1/Git/40m/softchansmodbus > sudo docker-compose up -d
Then start all docker script containers using:
> cd /opt/rtcds/caltech/c1/Git/40m/scripts > sudo docker-compose up -d
1.3. Stop all scripts
To stop all the scripts on docker, cd to this directory and do:
> cd /opt/rtcds/caltech/c1/Git/40m/scripts > sudo docker-compose down
1.4. Checking status of scripts
Running services container names and statuses can be checked by:
> sudo docker ps
To check the logs of a particular script (whatever they priont out to stdout)
sudo docker logs <container_name>
Example for IMC autolocker:
sudo docker logs scripts_AL_MC_1
Add | tail -10 to see the last 10 lines in the logs.
1.5. Restart a particular script
If you made a change to a script or its configuration files, to get changes loaded, simply restart the container by:
sudo docker restart <container_name>
Example for IMC autolocker:
sudo docker restart scripts_AL_MC_1
1.6. Stop a particular script
To stop a container (should be done if debugging the code on another computer):
sudo docker stop <container_name>
Example for IMC autolocker:
sudo docker stop scripts_AL_MC_1
1.7. Start a particular script
To start the container from stoped state:
sudo docker start <container_name>
Example for IMC autolocker:
sudo docker start scripts_AL_MC_1
1.8. Check IP address of running containers
To check the IP addresses of running containers:
> sudo docker inspect -f '|| {{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}} || {{.Name}} ||' $(sudo docker ps -aq)
2. Reverting back to systemd on megatron
The setup on megatron is intact. All service files exist in same place and old scripts can be started in the old manner by doing following on megatron:
2.1. MC autolocker
Enable the service first and then restart it.
sudo systemctl enable MCautolocker sudo systemctl restart MCautolocker
2.2. Disabling the services
For diabling these services to use optimus docker setup, do:
sudo systemctl stop MCautolocker sudo systemctl disable MCautolocker
Note that one should stop docker containers on optimus before starting these systemd services to avoid conflicting scripts running together.
