Provide a container including the following simulation software packages:
- corsika and sim_telarray
There are two options on how to use this container:
- Download from simtools container repository
- Build a new container from the available Dockerfile (requires access to sim_telarray package)
Building:
docker build -t sim_telarray .
Running:
docker run --rm -it -v "$(pwd)/external:/external" simtelarray bash
Packages are available from the simtools container repository.
To download and run a prepared container in bash:
$ docker run --rm -it -v "$(pwd)/external:/workdir/external" ghcr.io/gammasim/simtools-simtelarray:latest bash
Description of build a new container using the Dockerfile available in this directory.
Preparation:
Create a folder called gammasim and clone the container project:
mkdir gammasim
cd gammasim
git clone [email protected]:gammasim/containers.git
- Clone simtools into the external directory (this is where the source files of simtools will be available for development):
cd containers/simtelarray/external
git clone [email protected]:gammasim/simtools.git
cd simtools
Go to the following path (gammasim/containers/simtelarray/) and assure that there is a Dockerfile there:
cd ../../
ls
Building expects that a tar ball of corsika/sim_telarray (named corsika7.7_simtelarray.tar.gz) is available in the building directory. Download the tar package from the MPIK website (password applies) with
- Now download (or use another version) of the corsika_simtelarray installation to this folder. To download from the website use:
../tools/download_simulationsoftware.sh
Building:
- In the same folder (gammasim/containers/simtelarray/), build the docker:
docker build -t simtelarray .
- Once it is ready (it might take some minutes) run the docker in the same folder (gammasim/containers/simtelarray/):
docker run --rm -it -v "$(pwd)/external:/workdir/external" simtelarray bash
Now you are inside the container.
Apple silicon users, notice you should add --platform=linux/amd64 to the run command above.
Any output will be written to the $(pwd)/external
directory.