差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン 前のリビジョン | |||
docker [2021/02/16 05:16] – [Docker -> Singularityイメージの変換 (Singularity ver. 2.5 ~ 3)その2] 220.110.251.40 | docker [Unknown date] (現在) – 削除 - 外部編集 (Unknown date) 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
- | # docker | ||
- | |||
- | ## | ||
- | |||
- | ``` | ||
- | docker run -it --rm -v $PWD:/ | ||
- | ``` | ||
- | |||
- | - --rmオプションをつけると、終了時にコンテナを削除してくれる。 | ||
- | |||
- | - -v $PWD:/ | ||
- | |||
- | さらにグラフィカルなツールでX11を使いたい場合、 | ||
- | |||
- | ``` | ||
- | docker run --rm -it -e DISPLAY=$DISPLAY -v $HOME/ | ||
- | ``` | ||
- | |||
- | |||
- | ## | ||
- | |||
- | docker ps -a | ||
- | |||
- | ## | ||
- | |||
- | docker commit [編集したコンテナID] [保存するコンテナ名] | ||
- | |||
- | ## | ||
- | |||
- | ### exitで抜けた場合 | ||
- | |||
- | docker start [コンテナID] | ||
- | |||
- | docker attach [コンテナID] | ||
- | |||
- | もしくは | ||
- | |||
- | docker exec -it [コンテナID] bash | ||
- | |||
- | |||
- | ### ctrl + p + qで抜けた場合 | ||
- | |||
- | docker attach [コンテナID] | ||
- | |||
- | |||
- | # Singularityの使用 | ||
- | |||
- | ## Docker -> Singularityイメージの変換 (Singularity ver. 2.5 ~ 3) | ||
- | |||
- | 適当なdockerイメージをダウンロードして、適当にツールをインストール | ||
- | |||
- | ``` | ||
- | docker run -it centos/ | ||
- | yum XXX | ||
- | exit | ||
- | ``` | ||
- | |||
- | ``` | ||
- | docker ps -a | ||
- | ``` | ||
- | で出てくるコンテナIDをメモ | ||
- | |||
- | ``` | ||
- | docker commit [コンテナID] [保存するコンテナ名(ここでは適当にalpineとする)] | ||
- | ``` | ||
- | |||
- | ローカルにdockerイメージを保存するサーバをdockerで起動して、その中にイメージを保存 | ||
- | ``` | ||
- | docker run -d -p 5000:5000 --restart=always --name registry registry:2 # | ||
- | docker tag alpine localhost: | ||
- | docker push localhost: | ||
- | ``` | ||
- | |||
- | 次のようなdefファイルを作る(ここでは適当にファイル名はdefとする) | ||
- | ``` | ||
- | Bootstrap: docker | ||
- | Registry: http:// | ||
- | Namespace: | ||
- | From: alpine: | ||
- | ``` | ||
- | |||
- | Singularityイメージの作成 | ||
- | ``` | ||
- | sudo SINGULARITY_NOHTTPS=1 / | ||
- | ``` | ||
- | |||
- | ## Docker -> Singularityイメージの変換 (Singularity ver. 2.5 ~ 3)その2 | ||
- | |||
- | ``` | ||
- | sudo docker create --name for_export ubuntu: | ||
- | sudo docker export for_export > ubuntu.tar | ||
- | sudo docker rm for_export | ||
- | mkdir for_export_dir | ||
- | tar vxf ubuntu.tar -C for_export_dir | ||
- | / | ||
- | rm -rf for_export_dir | ||
- | ``` | ||
- | |||
- | ## Docker -> Singularityイメージの変換 (Singularity ver. 2.5 ~ 3)その3 | ||
- | |||
- | ``` | ||
- | sudo singularity build hello-singularity.sif docker-daemon:// | ||
- | ``` | ||
- | |||
- | ## Singularityイメージの使用 | ||
- | |||
- | ``` | ||
- | singularity pull --name bwa.img docker:// | ||
- | singularity shell bwa.img | ||
- | # | ||
- | #sudo chown root / | ||
- | # | ||
- | |||
- | singularity shell --bind /suikou/ bwa.img # / | ||
- | ``` | ||
- | |||
- | 研究室のサーバではカーネルが古いサーバが多く、 | ||
- | ``` | ||
- | ERROR : Failed to set effective UID to 0 | ||
- | ``` | ||
- | となり動かないことが多い。。。 | ||
- | |||
- | ## Docker -> Singularityイメージの変換 (Singularity ver. 2.1.2) | ||
- | |||
- | CentOS5ではSingularity ver. 2.1.2までしか動かないため | ||
- | |||
- | 作業はCentOS7で行う。 | ||
- | |||
- | ``` | ||
- | sudo docker run -it centos/ | ||
- | yum XXX | ||
- | exit | ||
- | ``` | ||
- | |||
- | ``` | ||
- | sudo docker ps -a | ||
- | ``` | ||
- | で出てくるコンテナIDをメモ | ||
- | |||
- | ローカルにdockerイメージを保存する | ||
- | |||
- | ``` | ||
- | sudo docker export [コンテナID] > centos6.docker.tar | ||
- | ``` | ||
- | |||
- | Singularityにインポート (ここからCentOS5) | ||
- | |||
- | ``` | ||
- | sudo singularity create --size 20480 centos6.img | ||
- | cat centos6.docker.tar|sudo singularity -v import centos6.img | ||
- | ``` | ||
- | |||
- | Singularityの起動 | ||
- | |||
- | ``` | ||
- | singularity shell centos6.img | ||
- | ``` | ||
- | |||
- | |||