EC2(Ubuntu 22.04)で Nextflow と Bioconda が実行可能な環境構築手順

EC2が起動した状態から10分もあればNextflowとBiocondaが利用できます
2023.06.17

ホスト(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 をターミネートした)ため作り直しが必要になりました。また手違いで環境を壊してもすぐに作り直せるように書き残しました。

手早く検証環境を作りたいときに参考にしていただければ幸いです。