パイプラインのDocker化
Dockerコンテナは、ソフトウェアツールの配布と実行を簡単に行うための分離された環境を提供します。 パイプラインの各主要なステップを独自のDockerコンテナーに配置し、段階的に実行することをお勧めします。 このページでは、Docker を使用してパイプラインをコンテナ化する手順を説明します (Docker イメージをリモートで保存する方法については、こちらを参照してください )。
ステップ 1 : Dockerfile を作成する
必要なスクリプトまたはファイルが含まれるフォルダーに、「Dockerfile」というファイルを作成して開きます。
nano Dockerfile
ファイルに追加して、ビルドするベース イメージ (空の ubuntu イメージなど) を指定します。
FROM ubuntu
必要な依存関係をインストールします (例: install、make、gcc、git)。
RUN apt-get update -qq \
&& apt-get install -y make gcc \
&& apt-get install -y git
(プロンプトが表示されてもインストールが続行されるようにするには、-y フラグを使用します)
github からツールをインストールする場合:
RUN git clone https://github.com/alexdobin/STAR.git
外部パッケージを必要とするRスクリプトの場合は、次のコマンドを使用してこれらのパッケージをインストールします。
RUN R -e "install.packages('BiocManager')"
RUN R -e "BiocManager::install('DESeq2')"
コンテナ起動時に実行するプログラムを指定する
ENTRYPOINT ["/STAR-2.7.10b/bin/Linux_x86_64/STAR"]
終了して Dockerfile を保存します
ステップ 2 : Docker イメージをビルドする
イメージに名前を付け、バージョン番号 (例: “:0.0.1”) を割り当てることで、Dockerfile とタグ (-t) を指定します。
docker build -f Dockerfile -t image_name:0.0.1 .
dockerhub リポジトリにプッシュするには、次のように docker イメージ タグを変更できます。
docker tag image_name:0.0.1 dockerhub_user_name/image_name:0.0.1
ステップ 3: dockerhub にプッシュする
docker push dockerhub_user_name/image_name:0.0.1
(ジェネリックDocker イメージの保存の詳細についてはここを確認してください)、