====Singularity==== sudo権限がなくても使えるコンテナ。KEKCCではsingularityが利用できる。 →実はapptainerへのsymbolic linkが貼ってある [[https://kekcc.kek.jp/service/kekcc/support/ja/container-guide/|KEKCC上のコンテナの案内]] ===コンテナの作成=== 既存のコンテナを読み込む場合\\ 例えばdocker hubのコンテナ[[https://hub.docker.com/r/picker24/t2kreweight_24_05/tags?page=&page_size=&name=&ordering=last_updated|例: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で開発をしたいこともあるはず。例えば[[https://git.t2k.org/nd280/wiki/nd280-wiki/-/wikis/Singularity-Containers#Using%20Singularity%20for%20Development%20Within%20a%20Writable%20Sandbox|ND280Software]](HighLAND)を使うとき $ singularity build --sandbox development/ docker://git.t2k.org:8088/nd280/framework/nd280softwaremaster:centos7-13.28 で編集可能なコンテナ(sandbox)をカレントディレクトリのdevelop/以下に作成できる。開くには $ singularity shell --writable development/