Description | Utiliser des modules Environnement avec des conteneurs Singularity |
---|---|
Cours lié | HPC Administration Module2 |
Auteur | Ndomassi TANDO (ndomassi.tando@ird.fr) |
Date de création | 27/09/2019 |
Date de modification | 27/09/2019 |
Summary
- Objectifs
- Créer son modulefile
- Charger le module environment pour lancer des commandes depuis un Conteneur Singularity
- Links
- License
Objectifs
La création d’un modulefile va nous permettre de créer des alias de commandes pour lancer des singularity run
ou des singularity exec
.
Ainsi, les utilisateurs ne se rendront pas compte qu’ils utilisent un conteneur Singularity et cela facilitera l’installation des logiciels pour les administrateurs systèmes.
Créer son modulefile:
Comme vu au Module1: https://southgreenplatform.github.io/trainings/hpc/installationmodule/#part-5
Nous pouvons créer nos propres environnements logiciels en créant des modulefiles.
Pour utiliser les conteneurs singularity dans ces modulefiles, nous allons créer un modulefile classique et cére des alias de commandes singularity avec le mot clé set-alias
Par exemple si l’on veut utiliser le conteneur singularity bwa-0.7.17.simg
créé précédemment, on va créer un modulefile de ce type:
#%Module1.0#####################################################################
##
## modules modulefile
##
## modulefiles/modules. Generated from modules.in by configure.
##
proc ModulesHelp { } {
global version modroot
puts stderr "module [module-info name]"
}
module-whatis "load the module [module-info name]
BWA is a program for aligning sequencing reads against a large reference genome (e.g. human genome)
Use the bwa-0.7.17.simg singularity container"
conflict bwa
# On charge le module singularity
module load system/singularity/2.4
# for Tcl script use only
set version 0.7.17
# on préciser comme répertoire de travail l'endroit où sont stockés les conteneurs
set topdir /usr/local/singularity/conteneurs/
set-alias bwa "singularity run $topdir/bwa-0.7.17.simg "
Charger le module environment pour lancer des commandes depuis un Conteneur Singularity :
Une fois le modulefile créer avec l’alias de commande, il suffit de le charger avec la commande
$ module load logiciel/version
Puis de lancer l’alias de la commande.
Par exemple pour lancer un bwa, on charge l’envrionnement
$ module load bwa/0.7.17
Puis on lance le bwa:
$ bwa + argument
La commande lancée est en fait:
$ singularity run /usr/local/singularity/conteneurs/bwa-0.7.17.simg + argument
Links
- Cours liés : HPC Trainings
License
