LoginSignup
3
2

More than 3 years have passed since last update.

バイオインフォにおける環境構築についての雑感

Last updated at Posted at 2019-11-06

はじめに

バイオインフォにおける環境設定は面倒だなあ、と思っている僕が、遺伝研の環境に出会って感銘を受けるまでを書いたミニストーリーです。
Galaxyの目指したあるべき姿として、「いろんなツールが楽に入れられる」だと思うんです。
結局、まあまあGalaxyでも面倒だったりするわけなんですが。。。

きっかけ

某研究室にバイオインフォの講義をするお仕事のサポートとして、
研究室のサーバに基本的なツールを20個くらいインストールしました。
バイオインフォ系のツール、インストールのやり方もバラバラで困りますよね。
(同僚がインストールスクリプト作ってくれたので、いちいちコマンドは打ちませんが)

例として、FASTQCとMACS2の例を挙げておきます。
インストールとしては簡単な方ですけど、JavaとかPythonが絡むので、サーバ全体を気にしつつインストールすることになりますね。

FASTQCのインストール手順

  • (前提)aptでcurlのインストール
  • aptでdefault-jreのインストール
  • fatsqcのダウンロード(zipファイル)
  • zipを解凍して、適切な場所に配置し、実行用のファイルにパスを通す
    • (全員が使えるようにするなら/etc/profileなどに書いておく)

MACS2のインストール手順

  • (前提)python, python-dev, libpython-dev, python-pip
  • pip install でnumpy, MACS2を入れる
    • Python2がデフォルトの環境なら「pip3」

遺伝研にて

別の業務で、遺伝研のスパコンに社内で作ったシェルスクリプト(複数のツールを順次動かすパイプライン)を動かすことになりました。
同じように環境設定しようと思いましたが、あれ?何もすることなくね?
(気づくまでしばらく時間かかりましたが。。。)

遺伝研の環境の特徴

  • Singularityが入っている。
  • /usr/local/biotools/ 以下に基本的なSingularityイメージが複数のバージョンで置いてある
  • 自身でイメージを作って持ってくることも可能なので、好き放題どんなコマンドでも動かせる。

FASTQの実行ファイル

下記のような「fastqc」ファイルを作って、実行権限をつける。qloginして実行すればOK

#!/bin/sh
module load singularity
singularity exec /usr/local/biotools/f/fastqc\:0.11.5--pl5.22.0_2 fastqc $@

終わりに

バイオインフォって無茶苦茶いっぱいツールを使うくせに、インストールするだけで敷居が高いんだよなあ、と思ってました。Dry解析教本でも結構細かく説明されてます。
あと、Python2でしか動かないツールがあったりと、ミドルウェアについての制約条件も結構面倒。
そうなると、仮想環境ってのは便利です。が、Dockerはroot権限で動きやがったりするので、システム管理者としては胃が痛い。。。その点、root権限が不要なのは、Singularityの良さだと思います。
遺伝研スパコンのようにいろんなバージョンのイメージを置いておけば、過去のバージョンのコマンドを持ち続けることもできますし、再現性という観点でも素晴らしいと思います。リソースが潤沢だからこそ出来ることですが。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2