Skip to content

A collection of .def files for apptainer used to make containers for running lsdtopotools, compiling the development branch, and building documentation.

License

Notifications You must be signed in to change notification settings

LSDtopotools/lsdtt_apptainer_def_files

Repository files navigation

The lsdtt apptainer definition file repository

This repo contains a collection of .def files for apptainer used to make containers for running lsdtopotools, compiling the development branch, and building documentation.

Getting apptainer working

You need apptainer to use these files.

  1. You can install natively in Linux using your normal installation routine for you distribution. For example on Ubuntu you use apt-get install apptainer.
  2. For MacOS follow these instructions: Installing on Mac
  3. In wondows you first need to install the Windows subsystem for Linx (see below). Once you use WSL to get a Linux subsystem running, just install in that subsystem (for example, using apt-get install apptainer)

Installing in Windows subsystem for linux

  1. Install wsl2:
  2. Start a powershell window
  3. Run wsl --install
  4. Download Ubuntu from the Microsoft store (we use Ubuntu 22.04) and install.
  5. Make sure you enter a password to this system you remember!
  6. You can start the Ubuntu operating system from a powershell window with:
> wsl -d Ubuntu-22.04
  1. You are now on a Linux operating system inside your Windows computer. Jump ahead to the section on installing on Linux

wsl2 troubleshooting

  1. wsl sometimes does something funny with a file called /etc/resolv.conf if you are running Ubuntu as your wsl operating system. If you are not online it will fail to create this file, and if you are online it will write this file in a way that fails to connect to the internet. Both of which cause various fatal error.
  2. To resolve this issue: a. First start your Ubuntu system, then write the file:
> wsl -d Ubuntu-22.04
> sudo nano /etc/resolv.conf

b. Note if you don't use sudo you won't be allowed to write the file (you will get a permission denied error. sudo gives you administrator rights, you need to remember the password you set up when you installed the Ubuntu operating system on wsl). c. Once you run nano, your file should say:

generateResolvConf = false
nameserver 8.8.8.8

I have apptainer, now what

You use apptainer to build a container using the command

apptainer build my_container.sif my_definition_file.def

The container for the full lsdtt stack ends up at a Gb and takes some time to build. But we have some pre-built containers you can just download.

  1. For the distribution version of lsdtt including visualisation tools:
wget https://www.geos.ed.ac.uk/~smudd/apptainer_containers/lsdtt_distrib.sif
  1. For the container that can build the development version or stable version from source use:
wget https://www.geos.ed.ac.uk/~smudd/apptainer_containers/lsdtt_development.sif
  1. And if you want to build the documentation use:
wget https://www.geos.ed.ac.uk/~smudd/apptainer_containers/jupyter_book_container.sif

About

A collection of .def files for apptainer used to make containers for running lsdtopotools, compiling the development branch, and building documentation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published