Edited at
GalaxyDay 15

細菌叢解析ツールの共有〜Dockerコンテナで幸せになる方法①〜


はじめに

ひょんなことからpitagora-galaxyのみなさまとIIBMP2018でスライド発表してきました。

では、そちらをご紹介させていただきます。

※大会のスライドをちょっと変更しました。


つるおか_ページ_05.jpg

NCBIなどの公共データからダウンロードしたデータ。vsearchを利用して解析します。


つるおか_ページ_07.jpg

・解析ツールを構築するためには様々なソフト、パッケージが必要なんです。大変!


つるおか_ページ_09.jpg

・出来た!動いた! 共同研究者よ、君にもどうぞ!

・・・あれ動かない。。。


つるおか_ページ_10.jpg

Docker様の登場です。


つるおか_ページ_12.jpg

・Dockerのいいところを並べてみました。


つるおか_ページ_15.jpg

・dockerイメージの説明です。いろんなイメージをダウンロードできるのです。おなじみのUbuntuPythonなどの公式イメージもありますよ。


つるおか_ページ_18.jpg

・自分でも作れます!Dockerfileを作成し、ビルドするとDockerイメージになります。



たとえばこんな感じに書きます。


※簡単に省略してます。

→完全版はこちら:petadimensionlab/docker_16s_vsearchのDockerfile



ex._dockerfile

#利用するUbuntuのイメージ

FROM ubuntu:16.04

# ワークディレクトリを設定
WORKDIR /

# いろいろインストール
RUN apt-get update -y && \
apt-get update --fix-missing && \
apt-get install -y wget bzip2 ca-certificates curl git tar nano zlib1g-dev && \

# minicondaインストール
RUN wget --quiet https://repo.anaconda.com/miniconda/Miniconda3-4.5.4-Linux-x86_64.sh -O ~/miniconda.sh && \
/bin/bash ~/miniconda.sh -b -p /opt/conda && \
rm ~/miniconda.sh && \
/opt/conda/bin/conda clean -tipsy && \
ln -s /opt/conda/etc/profile.d/conda.sh /etc/profile.d/conda.sh && \
echo ". /opt/conda/etc/profile.d/conda.sh" >> ~/.bashrc && \
echo "conda activate base" >> ~/.bashrc

# ファイル、フォルダをコピー
ADD vsearch_ubuntu /vsearch_ubuntu  #自作したPythonスクリプトフォルダ
ADD ./ref.tar.bz2 /  #リファレンス類(自動で解凍してくれます)

# condaでいろいろインストール
RUN conda config --add channels defaults && \
conda config --add channels conda-forge && \
conda config --add channels r && \
conda config --add channels bioconda && \
conda install -y conda-forge::openjdk fastqc=0.11.7 trimmomatic==0.36=5 vsearch==2.7 mothur=1.39.5 #動作確認済みのバージョンを指定



つるおか_ページ_21.jpg

・DockerfleはDockerhubにアップロードします。

・共同研究者や使用したい人がDockerイメージをダウンロードして各々で使用してもらえます!



アップロード(build)方法は・・・・??


command

# dockerfileのあるディレクトへ移動

$ cd dockerfile/ 
# buildコマンド
$ docker build -t vsearh:1.0 .
(  docker build -t イメージ名:タグ名 .  )


つるおか_ページ_22.jpg

・はい、みんな幸せ!!


細菌叢解析ツールの共有〜Dockerコンテナで幸せになる方法②〜に続きます!



参考URL

効率的に安全な Dockerfile を作るには

大会スライドのフルバージョン(pitagora-galaxy公式Twitter)

細菌叢解析ツールの共有〜Dockerコンテナ〜

※本記事ですが、こちらをちょこっと変えただけだったりして・・・

・過去の記事リンク

RstudioCloudの使い方

Docker for Mac 勉強メモ〜インストール〜

Docker for Mac 勉強メモ〜コマンド集〜

超新人プログラマー(見習)がまず手にした本と参考にしたWEBサイト〜Docker編〜