Quickstart

The intended setup for using Glossia is as a containerized process, with access to the host’s Docker daemon only via the dockerlaunch system.

Dependencies

  • dockerlaunch (installation guide)
  • pip (Ubuntu: sudo apt-get install python-pip)
  • docker-compose (sudo pip install docker-compose)

Execution

The Glossia server may be launched as follows:

git clone https://github.com/go-smart/glossia-server-side
cd glossia-server-side
sudo ./setup.sh
sudo ./start-local.sh

This will start both a WAMP router and a Docker instance connected to it. Any client supporting Glossia may connect to it on your local machine at port 8080.

You should ensure that only authorized clients may access the router port. Moreover, note that WAMP traffic and responses are not secure between clients attached to the same WAMP router.

Adding simulation containers

Simulation container images may be pulled in using the command:

sudo docker pull gosmart/glossia-goosefoot

This enables the Goosefoot family workflow, wrapping CGAL and the Elmer solver.

Another available image is gosmart/glossia-fenics, wrapping the FEniCS libraries. This package is very well-suited to Glossia usage, and adapting FEniCS Python codes to Glossia is especially straightforward.

Glossia does not need to be restarted to use these images - as long as Glossia has the relevant family built in and dockerlaunch has the image whitelisted, any subsequent GSSA-XML definitions using the image should run as normal.

Interaction

The current stable Glossia clients are Glot and the Go-Smart Web Framework. Glot is the core technology for simulation developer use and testing, and is intended to be comprehensive. An open source, proof-of-concept web-based management tool also exists, but should not be considered ready for use.

If you would be interested in using the radiological interface for your own projects, or sponsoring development of the developer-friendly open source simulation management tool, please contact the Go-Smart Consortium.

Update

To update the simulation containers or Glossia itself, the docker pull command is sufficient:

sudo docker pull CONTAINER

where CONTAINER is “gosmart/glossia gosmart/glossia-bridge” for updating Glossia, or “gosmart/glossia-goosefoot” (etc.) for a specific container.

The ./start-local.sh script will need restarted if Glossia is updated, but this is not necessary for updating individual simulation container images.