**文書の過去の版を表示しています。**
吉武先生のスクリプトのアウトプットファイルをパースしたHTMLファイルを生成するSingularityコンテナの作成
学生実験用Linuxを起動
- HyperV Managerで学生実験用Linux(Ubuntu20.04)を起動
ssh -l training 192.168.253.157
で学生実験用Linuxに接続(Pass:Programming)- このサイトhttps://qiita.com/tkyonezu/items/0f6da57eb2d823d2611dを元にDockerをインストール
Dockerコンテナの作成
- centos7 のimageをPull
sudo docker pull centos:centos7
- CentOS7コンテナにインタラクティブモードで接続。(HTMLファイルをパースするスクリプトがあるディレクトリをマウント)
sudo docker run -it -v $PWD:$PWD -w $PWD –name srr_parse baae83af349f bash
- コンテナ内でこのサイト https://qiita.com/witchcraze/items/592483c7625e881d771f に従い、Python3をインストール
- コンテナ内でスクリプトファイルを
/home/script
以下に移動 - コンテナをExit
- 先程のコンテナからイメージを作成
sudo docker commit srr_parse_3 srr_parse_image:ver2
- 作成したイメージでコンテナを起動。無事にHTMLファイルがカレントディレクトリに作成されることを確認
sudo docker run -v $PWD:$PWD srr_parse_image:ver2 python3 /home/script/srr_parse.py $PWD/test.result
Singularityのインストール
- 必要なパッケージをインストール
sudo apt-get update && sudo apt-get install -y \
build-essential \
libssl-dev \
uuid-dev \
libgpgme11-dev \
squashfs-tools \
libseccomp-dev \
wget \
pkg-config \
git \
cryptsetup
- Goをインストールする
export VERSION=1.13.5 OS=linux ARCH=amd64 && wget https://dl.google.com/go/go$VERSION.$OS-$ARCH.tar.gz && sudo tar -C /usr/local -xzvf go$VERSION.$OS-$ARCH.tar.gz && rm go$VERSION.$OS-$ARCH.tar.gz
- Goへのpathを設定する
echo 'export PATH=/usr/local/go/bin:$PATH' » ~/.bashrc && source ~/.bashrc
- Singularityをダウンロード
export SVERSION=3.5.2 && wget https://github.com/sylabs/singularity/releases/download/v${SVERSION}/singularity-${SVERSION}.tar.gz && tar -xzf singularity-${SVERSION}.tar.gz && cd singularity
- Singularity ソースコードをコンパイル
./mconfig && make -C builddir && sudo make -C builddir install
- 起動を確認
singularity help
Singularityイメージの作成
- DockerイメージからSingularityイメージへの変換
sudo singularity build srr_parse_ver2.sif docker-daemon:\srr_parse_image:ver2
* Singularityコンテナを起動
singularity exec –bind $PWD:$PWD ~/create_container/srr_parse_ver2.sif python /home/script/srr_parse.py $PWD/test.result''