A compact distribution of common EPICS Channel Access and PV Access tools via Docker images.
Available on the Docker Hub at: /r/pklaus/catools.
The following executables from EPICS are part of this Docker image:
acctst caEventRate caput iocLogServer pvinfo
aitGen caRepeater casw makeBpt pvlist
antelope ca_test catime msi pvmonitor
ascheck caget e_flex p2p pvput
caConnTest cainfo excas pvcall softIoc
caDirServ camonitor genApps pvget softIocPVA
There are two flavours of the images available:
slim
no underlying Linux system, just executables and libraries,debian
based on Debian (slighly larger).
Each tag is built for multiple architectures (linux-{amd64,386,arm64,arm/v7}
).
The default tag :latest
is pointing to the latest debian
image.
caget of a process variable from an IOC in the (Docker internal) network docker-epics
.
docker run \
--rm \
--network docker-epics \
pklaus/catools \
caget FAIR:CBM:MVD:YOUR:PV
camonitor works too, but for being able to quit the process using Ctrl-c it needs to be run with a PID higher than 1. This can be reached by wrapping the call in a shell command or by specifying the host namespace for the PID in the docker run statement:
docker run \
--rm \
--pid host \
--network docker-epics \
pklaus/catools \
camonitor FAIR:CBM:MVD:YOUR:PV
If such a command was accidentally started without specifying a different PID it won't quit
with Ctrl-c, the terminal can be disattached from the container using
Ctrl-p Ctrl-q and the container can then be killed with
docker kill
using the hash revealed by docker ps
.
When using a more elaborate tool such as the softIoc
, I recommend to use the
debian
flavour of the images.