ska-tango-images-rest-server
This image contains TangoRestServer. TangoRestServer is a web
sever which exposes your Tango control system via a REST API.
Summary
Release 0.6.0 of ska-tango-images provides the 1.22.0 tag of the ska-tango-images-rest-server OCI image.
The image uses ska-tango-images-tango-admin as a base image and so
provides the same features, in addition to the TangoRestServer application.
Included Software
Package |
Version |
|---|---|
TangoRestServer |
1.22 |
tango_admin |
1.24 |
cppTango |
10.0.0 |
ZeroMQ |
4.3.5 |
omniORB |
4.3.2 |
opentelemetry-cpp |
1.16.1 |
Usage Example
To launch the “rest” instance of the TangoRestServer device server, connecting to
TANGO_HOST=localhost:10000 run the following:
docker run --rm --env TANGO_HOST=localhost:10000 --net=host \
--detach --name rest-server \
artefact.skao.int/ska-tango-images-rest-server:1.22.0 \
rest
This will launch a REST server listening on port 10001, to check that this is working run the following curl command:
URL="http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0"
curl -s -u "tango-cs:tango" $URL | python -m json.tool
Which should output something like the following:
{
"name": "sys/rest/0",
"info": {
"last_exported": "4th February 2025 at 15:42:10",
"last_unexported": "?",
"name": "sys/rest/0",
"ior": <some very long IOR>,
"version": "5",
"exported": true,
"pid": 7,
"server": "TangoRestServer/rest",
"hostname": "localhost",
"classname": "unknown",
"is_taco": false
},
"attributes": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0/attributes",
"commands": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0/commands",
"pipes": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0/pipes",
"properties": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0/properties",
"state": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0/state",
"_links": {
"_self": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/sys/rest/0",
"_parent": "http://localhost:10001/tango/rest/rc4/hosts/localhost/10000/devices/"
}
}
The REST server can be stopped with:
docker stop rest-server