目次

Singularity

sudo権限がなくても使えるコンテナ。KEKCCではsingularityが利用できる。 →実はapptainerへのsymbolic linkが貼ってある KEKCC上のコンテナの案内

コンテナの作成

既存のコンテナを読み込む場合
例えばdocker hubのコンテナ例:T2KReweightを使用する場合

$ singularity pull --verbose t2kreweight_24_05.sif docker://picker24/t2kreweight_24_05:alma9

hoge.sifは作成するコンテナの名前。なんでも良い

注:KEKCCでは/tmpのクォータが小さくbuildが失敗する。一時ファイルの置き場を自分のhomeの下などにしてこれを回避する必要がある。
環境変数SINGULARITY_TMPDIRを設定すればOK。

コンテナの中に入る

shellでコンテナの環境が利用できる。-Bオプションはコンテナ外のファイルをコンテナに見せる(bind)。

$ singularity shell t2kreweight_24_05.sif -B /path/to/src

コンテナの編集

コンテナは基本的にreadonlyだが、containerで開発をしたいこともあるはず。例えばND280Software(HighLAND)を使うとき

$ singularity build --sandbox development/ docker://git.t2k.org:8088/nd280/framework/nd280softwaremaster:centos7-13.28

で編集可能なコンテナ(sandbox)をカレントディレクトリのdevelop/以下に作成できる。開くには

$ singularity shell --writable development/