Using the CTF DataEditor with a Singularity Container
The current version of the CTF DataEditor tool runs under CentOS (Linux) version 6.9. To support the MEG user community, we have a Singularity container for CentOS 6.9 containing the necessary libraries to run the DataEditor tool. This allows MEG users to run the DataEditor under the operating system (Windows, Mac OSX, Linux) of their choice.
Singularity is a Operating-system-level virtualization solution where an operating system can host another operating system in an isolated container. To run a Singularity container on your operating system, you need to install the Singularity software for your operating system. There are install packages for the major operating systems from the Singularity website.
- Singularity container running CentOS 6.9 with the CTF DataEditor tool
- Singularity container ctf-6.1.14-beta.img download
Usage: singularity shell --bind /data:/mnt/data ctf-6.1.14-beta.img where the /data file system holds your CTF data set and mounts under /mnt/data inside the container (your /home directory and the /tmp file systems are automatically visible inside the container)
- biowulf.nih.gov users
- module load ctf/6.1.14-beta
The ctf container is already installed on biowulf. For other machines, use the following bash script to shell into the singularity container.
#!/bin/bash # goctf.sh singularity shell --bind /data/username:/mnt/data ctf-6.1.14-beta.img killall -s msgd 2>/dev/null
DataEditor communicates with other CTF tools using the msgd service, and DataEditor will automatically launch this service if it isn't running. This service is not killed when you exit from the singularity container, so you will end up with a persistent process. To prevent this from occurring, just kill it, as above.
You may want to add this stanza to your ~/.bashrc file. This sets both the command prompt and the command history format for your shell inside the container
if [ ! -z "$SINGULARITY_CONTAINER" ]; then ## PS1 is set inside the container HISTFILE=~/.bash_history HISTTIMEFORMAT='%Y%m%d/%H:%M:%S ' else export PS1='[\h \w]$ ' fi
- CTF tools native download
Instead of installing the Singularity container, you can also install the tools natively; you will need to install the necessary 32-bit libraries by hand.