Sign inSign up

arnaudbecheler/spock-container

By arnaudbecheler

Updated over 4 years ago

Container for running SpOCK

Image
0

217

arnaudbecheler/spock-container repository overview

Dockerfile_for_SpOCK

Getting SpOCK working in a Docker image for a cross-platform reproducible environment.

The Spacecraft Orbital Computations Kit (SpOCK) is an open source tool for spacecraft mission analysis and simulation. SpOCK allows the simulation of spacecrafts' hardware, orbital and attitude dynamics, and the computations of mission events (ground station contacts, payload data-takes and eclipses). The ambition of the author is to develop an operational tool (mission analysis, flight dynamics and operations) which includes only few but accurate simulations features and which can be easily further developed and customized. For this reason the software is developed with a (hopefully) clear structure with elements which can be easily read and reproduced and without a graphical user interface. For detailed information about installation, configuration and use please read the user guide.

  • You will need to get Docker first.
  • The current image:
    • has a size of 1.83 GB (around 8x lighter than a full Ubuntu distribution)
    • takes less than 10 minutes to build from scratch
    • takes less than 1 minute to download from DockerHub.
Downloading the pre-built image from DockerHub

The image has been published on DockerHub for public use. This will save you the time of building the image from scratch everytime (see following section).

docker pull arnaudbecheler/spock-container:latest

To see what images are present locally, use the docker images command.

Launching the container

To launch an interactive terminal (option -it) of the newly created image, use the docker run command:

docker run -ti arnaudbecheler/spock-container /bin/bash

This will open a bash session in the /home/docker user folder.

All SpOCK binaries have been compiled and are present in the /home/docker/SpOCK/bin directory. You can test their invocation with e.g.:

./bin/OrbitPropagator input/SimulationParameters/simparam_sample.xml

To exit the container, simply use the exit command.

Building the Docker image on your local system using the repo Dockerfile

That is useful to test modifications of the Dockerfile, or visualize what is actually happening when the image is built. It is a bit longer (around 10mn) than pulling the pre-built image from DockerHub (1mn).

git clone Becheler/Dockerfile_for_SpOCK
cd Dockerfile_for_SpOCK
docker build -t spock-image .
docker images
Converting Docker Images to Singularity for Use on NASA Pleiades

For security reasons, Docker containers are not supported on Pleiades, but you can convert them to Singularity containers.

On a Pleiades front-end system (PFE), do the following to create a singularity image or a singularity sandbox:

pfe$ module load singularity
pfe% singularity pull lolcow.sif docker://godlovedc/lolcow
# or
pfe$ singularity build --sandbox lolcow docker://godlovedc/lolcow

Tag summary

Content type

Image

Digest

Size

714.6 MB

Last updated

over 4 years ago

docker pull arnaudbecheler/spock-container