AlphaFold のインストール(Ubuntu 上)
【概要】
AlphaFold は,Google DeepMind による,AI を用いたタンパク質の立体構造予測ソフトウェアである.Ubuntu 上で Docker を使って動作させる.
【目次】
【関連する外部ページ】
- AlphaFold の公式 Github ページ: https://github.com/google-deepmind/alphafold
第1章 前準備
Ubuntu のシステム更新
Ubuntu で OS のシステム更新を行うときは, 端末で,次のコマンドを実行する.これは,パッケージ情報を最新の状態に保ち,インストール済みのパッケージをセキュリティアップデートやバグ修正を含めて更新するためである.
# パッケージリストの情報を更新
sudo apt update
# インストール済みのパッケージを包括的に更新(依存関係も考慮)
sudo apt full-upgrade
# カーネル更新等で実際に再起動が必要な場合のみ実行を推奨
# sudo shutdown -r now
Docker のインストール
AlphaFold の公式手順は Docker 上での実行を前提としている.Docker と,GPU を Docker から利用するための NVIDIA Container Toolkit を,あらかじめインストールしておく.
# Docker のインストール
curl -fsSL https://get.docker.com | sudo sh
# 現在のユーザーを docker グループへ追加(sudo なしで docker コマンドを使うため)
sudo usermod -aG docker $USER
# 反映のため,一度ログアウトしてログインし直す
# NVIDIA Container Toolkit のインストール
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt update
sudo apt install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
次のコマンドで,Docker から GPU を認識できているか確認する.GPU の一覧が表示されれば成功である.
docker run --rm --gpus all nvidia/cuda:12.8.0-base-ubuntu24.04 nvidia-smi
第2章 AlphaFold のインストール(Ubuntu 上)
https://github.com/google-deepmind/alphafold に記載の手順に従う.
- AlphaFold のソースコードと reduced データベースのダウンロード
cd /usr/local sudo rm -rf alphafold sudo git clone https://github.com/google-deepmind/alphafold.git sudo chown -R $USER alphafold sudo apt install -y aria2 rsync sudo mkdir /usr/local/reduced_genetic_db sudo chown $USER /usr/local/reduced_genetic_db cd /usr/local/alphafold scripts/download_all_data.sh /usr/local/reduced_genetic_db reduced_dbsダウンロードには時間がかかるため,上記コマンドをバックグラウンドで実行することが推奨される.また,ダウンロード先ディレクトリ(
/usr/local/reduced_genetic_db)は,AlphaFold のリポジトリディレクトリの下に置いてはならない.下に置くと,Docker イメージのビルド時に巨大なデータベースがビルドコンテキストへコピーされ,ビルドが遅くなる. - Docker イメージのビルドと,run_docker.py の依存パッケージのインストール
cd /usr/local/alphafold docker build -f docker/Dockerfile -t alphafold . pip3 install -U --no-user -r docker/requirements.txtdocker buildは,AlphaFold の実行に必要なライブラリ一式を含む Docker イメージを作成する.pip3 installは,Docker コンテナを呼び出す側の制御スクリプトrun_docker.pyを動かすために,ホスト側の Python 環境へ必要な依存パッケージを入れるものである.AlphaFold 本体は,この Docker イメージの中で動作する. - AlphaFold を実行する
your_protein.fastaのところには,予測したいタンパク質の配列を記述した FASTA ファイル名を指定する.python3 docker/run_docker.py \ --fasta_paths=your_protein.fasta \ --max_template_date=2022-01-01 \ --db_preset=reduced_dbs \ --data_dir=/usr/local/reduced_genetic_db \ --output_dir=/home/user/absolute_path_to_the_output_dir--data_dirには,手順1でダウンロードしたデータベースのディレクトリを指定する.--db_preset=reduced_dbsは,reduced データベースを使う設定であり,手順1でダウンロードしたデータベースの種類と一致させる.--output_dirには,予測結果の出力先ディレクトリを絶対パスで指定する.実行が終わると,出力先ディレクトリの下に,予測された立体構造(PDB形式ファイル)などが生成される.