CTF Tools: Difference between revisions

From MEG Core
Jump to navigation Jump to search
Content added Content deleted
(reorganizing page names and other updates)
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
==== Using the CTF DataEditor with a Singularity Container ====
==== Using the CTF tools 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,
[mailto:holroydt@mail.nih.gov Tom Holroyd] has created a [https://singularity.lbl.gov/index.html Singularity] container for CentOS 6.9 and populated the container with the necessary libraries to run the DataEditor tool. This allows MEG users to run the DataEditor tool under the operating system (Windows, Mac OSX, Linux) of their choice.
The current version of the CTF tools run under CentOS (Linux) version 6.9. To support the MEG user community, we have a [https://singularity.lbl.gov/index.html Singularity] container for CentOS 6.9 containing the necessary libraries to run them. This allows MEG users to run the tools under the operating system (Windows, Mac OSX, Linux) of their choice.


Singularity is a
Singularity is a
[https://en.wikipedia.org/wiki/Operating-system-level_virtualization Operating-system-level virtualization] solution where an operating system
[https://en.wikipedia.org/wiki/Operating-system-level_virtualization 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 [https://singularity.lbl.gov/index.html Singularity website.]
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 [https://www.sylabs.io/ Singularity website.]

----
----

; Singularity container running CentOS 6.9 with the CTF DataEditor tool
; Singularity container running CentOS 6.9 with the CTF tools
: [https://megcore.nih.gov/MEG/ctf-6.1.14-beta.img Singularity container ctf-6.1.14-beta.img download]
: [https://megcore.nih.gov/MEG/ctf-6.1.14-beta.img Singularity container ctf-6.1.14-beta.img download]
: {| width=70% style="border: 1px solid black;"
: {| width=70% style="border: 1px solid black;"
|<u>Usage</u>: singularity shell --bind /data:/mnt/data ctf-6.1.14-beta.img
|<u>Example usage</u>: 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
| where the ''/data'' file system holds your CTF data set and mounts under /mnt/data inside the container
Line 16: Line 18:
| (your /home directory and the /tmp file systems are automatically visible inside the container)
| (your /home directory and the /tmp file systems are automatically visible inside the container)
|}
|}

----
----
; felix.nih.gov users
: ssh -X login@felix.nih.gov
: Copy the ctf-6.1.14-beta.img to your /data directory.


; biowulf.nih.gov users
: Either add '''module load singularity''' to your ~/.bashrc startup file or type this on the command line.
: module load ctf/6.1.14-beta
: Use the following bash script to shell into the singularity container.

The ctf container is already installed on biowulf.

----

; General use
For other machines, use the following bash script to shell into the singularity container.


<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
Line 32: Line 39:
</syntaxhighlight>
</syntaxhighlight>


'''DataEditor''' and the other CTF tools communicate with each other using the '''msgd''' service, which will automatically be launched if it isn't already 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.
The DataEditor communicates with other CTF tools using the '''msgd''' service and the DataEditor will automatically
launch this service if it isn't running. The trouble on felix.nih.gov is this service is not killed when you exit from the singularity container and you will end up with a persistent process on felix. To prevent this from occurring, make sure msgd goes away.


You may want to add this stanza to your ~/.bashrc file on felix.nih.gov.
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
This sets both the command prompt and the command history format for your shell inside the container


Line 47: Line 53:
fi
fi
</syntaxhighlight>
</syntaxhighlight>

----

; 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.

: [https://megcore.nih.gov/MEG/ctf-6.1.14.tgz ctf-6.1.14.tgz download]

Revision as of 15:55, 23 September 2020

Using the CTF tools with a Singularity Container

The current version of the CTF tools run 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 them. This allows MEG users to run the tools 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 tools
Singularity container ctf-6.1.14-beta.img download
Example 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.


General use

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 and the other CTF tools communicate with each other using the msgd service, which will automatically be launched if it isn't already 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.

ctf-6.1.14.tgz download