Software for radio astronomy developed by CSIRO. For developers.
9.9K
These images are for developers of ASKAPsoft and Yandasoft. For end-users, please use csirocass/yandasoft instead.
Please choose the image suitable for your MPI implementation.
All recent images are based on casacore 3.5.0 with additional patches required by ASKAPsoft and Yandasoft.
Pull one of these yandabase docker images from csirocass account in DockerHub. The difference between these images is in the MPI implementation. Note that yandabase-galaxy actually has MPICH, but the base image has Galaxy-specific items in it.
docker pull csirocass/yandabase:mpich
docker pull csirocass/yandabase:openmpi4
docker pull csirocass/yandabase:openmpi3
docker pull csirocass/yandabase:openmpi2
docker pull csirocass/yandabase:setonix
Note that the numerics in the OpenMPI versions might change later.
For convenience, copy this into a script called docker_run.sh:
#!/bin/bash
# Given a Docker image, this script runs Docker container interactively.
if [ $# -eq 0 ]; then
echo "ERROR: Provide the full name of Docker image as argument"
echo "USAGE: "
echo " docker_run.sh IMAGE_NAME:IMAGE_TAG"
exit 1
fi
# Run the container with the following arguments:
# - Remove the container when it's finished
# - Interactive mode
# - Mount the current dir in host to work dir in container
# - Mount the home dir in host to home dir in container
# - Set time zone
docker container run \
--rm \
-it \
-v ${PWD}:/home/yanda-user/host-workdir \
-v ${HOME}:/home/yanda-user/host-homedir \
-e TZ=Australia/Melbourne \
$1
Then, set the script so that it can be executed.
chmod a+x docker_run.sh
Finally, execute the script, giving it a Docker image name as the argument. For example, to run the Docker image with MPICH implementation, do this:
./docker_run.sh csirocass/yandabase:mpich
Note that you can mount additional directories, as needed. For example, to mount a directory that contains test data, add this line in the script:
-v MY_PATH/MY_DATA_DIR:/home/yanda-user/host-datadir \
Inside the container, your user name is yanda-user. Your home directory is /home/yanda-user. Inside this directory, there are two directories mounted from outside the container:
From inside the work directory, do the usual configure and build. For example:
cd /home/yanda-user/host-workdir
git clone https://bitbucket.csiro.au/scm/askapsdp/askap-askapsoft.git
cd askap-askapsoft
mkdir build
cd build
cmake -DCMAKE_CXX_COMPILER=mpicxx -DCMAKE_CXX_FLAGS="-I/usr/local/include -pthread" -DCMAKE_BUILD_TYPE=Debug -DIce_HOME=/usr/lib/x86_64-linux-gnu/ -DBUILD_ANALYSIS=ON -DBUILD_PIPELINE=ON -DBUILD_COMPONENTS=ON -DBUILD_ANALYSIS=ON -DBUILD_SERVICES=ON -DCMAKE_CXX_FLAGS="-coverage" -DCMAKE_EXE_LINKER_FLAGS="-coverage" -DCMAKE_INSTALL_PREFIX=/home/yanda-user/all_yandasoft/install ..
make -j<NUMBER_OF_CPU>
make install
When you're finished, simply type this from inside the container.
exit
Content type
Image
Digest
sha256:2bd7ef909…
Size
1.8 GB
Last updated
almost 3 years ago
docker pull csirocass/yandabase:lustrempich