EC2(Ubuntu 22.04)で Nextflow と Bioconda が実行可能な環境構築手順
ホスト(EC2)で Nextflow が起動でき、Nextflow で実行するバイオインフォマティクスツールは Bioconda でインストールできる環境が必要になりました。
本記事はBioconda のセットアップから Nextflow の実行環境構築まで一気通貫してコピペで作れる手順を紹介します。
EC2 が起動した状態から10分もあれば Nextflow と Bioconda が利用できます。
参考手順
過去に個別に環境構築方法を紹介した記事があります。書いた本人がまとまった手順が必要になったので再編しています。
EC2(Ubuntu 22.04 LTS)に Bioconda の実行環境を構築する手順
EC2(Ubuntu 22.04 LTS)に Nextflow の実行環境を構築する手順
実行環境
Name | Version |
---|---|
Instance Type | t3a.midium |
Disk Size | 20 GiB(gp3) |
AMI Name | ubuntu/images/hvm-ssd/ubuntu-jammy-22.04-amd64-server-20230516I |
AMI I | ami-0d52744d6551d851e |
OS | Ubuntu 22.04 LTS |
conda | 23.5.0 |
Nextflow | 23.04.1.5866 |
実行環境構築手順
EC2 の作成手順は省略します。マネージメントコンソールから起動して SSH などでリモート接続できれば問題ありません。
fish インストール
私は fish ユーザーなので fish を用意しておきます。その他シェルユーザーはスキップしてください。
sudo apt-add-repository ppa:fish-shell/release-3 sudo apt update sudo apt install fish -y
Miniconda セットアップ
Miniconda をインストールします。bash の場合はconda init fish
の箇所はconda init
としてください。
Python 3 のバージョンによってはダウンロードするファイルが異なります。詳しくは以下の記事もご確認ください。Nextflow のバージョンは後で最新版にアップデートするため気にしていません。
Bioconda 入門 Anaconda、Minicondaとの違いと EC2 に実行環境をセットアップしてみた | DevelopersIO
wget https://repo.anaconda.com/miniconda/Miniconda3-py310_23.1.0-1-Linux-x86_64.sh bash Miniconda3-py310_23.1.0-1-Linux-x86_64.sh -b -p $HOME/miniconda source ~/miniconda/bin/activate conda init fish
デフォルトのbase
環境を自動アクティベートされないように無効化します。
conda deactivate conda config --set auto_activate_base false
conda を最新バージョンに更新します。
conda update conda -y
Bash 向けの Tips は以下の記事も参考にしてください。
Bioconda セットアップ
fish の場合はこのタイミングでシェルを切り替えます。
fish
仮想環境(ここではnextflow
)を作成し、Bioconda に必要なチャンネル設定を追加します。
conda create -n nextflow conda activate nextflow conda config --add channels defaults conda config --add channels bioconda conda config --add channels conda-forge conda config --set channel_priority strict
バイオインフォマティクスツールもconda install
できる状態になりました。
Nextflow インストール
仮想環境nextflow
にアクティベートしていることが前提です。
conda install nextflow -y
nextflow
コマンドが実行可能になりました。
> nextflow -v (nextflow) OpenJDK 64-Bit Server VM warning: -XX:ThreadPriorityPolicy=1 may require system level permission, e.g., being the root user. If the necessary permission is not possessed, changes to priority will be silently ignored. nextflow version 23.04.1.5866
その他
conda install [Packege Name]
で必要なバイオインフォマティクスツールをインストールして、Nextflow のワークフローからホストにインストールされたツールを実行できます。
おわりに
手違いで Bioconda + Nextflow 検証環境を消してしまった(誤って EC2 をターミネートした)ため作り直しが必要になりました。また手違いで環境を壊してもすぐに作り直せるように書き残しました。
手早く検証環境を作りたいときに参考にしていただければ幸いです。