ユーザーがアノテーション情報を自由に編集、抽出できるゲノムブラウザWebApolloの導入方法です。新規ゲノムから新たに遺伝子モデルの構築を行っていく場合や、既知の遺伝子モデルが不適当なときに、インタラクティブにモデルの変更を行えます。発現量をグラフ形式で見たり、interPro Scanの結果からドメイン領域の確認をする場合も有用です。
ここでデモを見られます
http://genomearchitect.github.io/demo/
#参考サイト
本家
https://genomearchitect.readthedocs.io/en/1.0.4/Quick_start_guide/
バージョンが多くて依存関係も複雑!
ポスグレの入れ方
http://qiita.com/tstomoki/items/0f1a930bd42a8e1fdaac
#事前準備
- macはEl Capitan 10.11.6です
- Apolloを動かすために新規ユーザーを作成しておいた方が良いです。
自分はMac miniを準備して、Apollo専用にしています。 - 必要なツールを管理するためにhomebrewを使っています。以下のサイトを参考にいれて下さい。
https://brew.sh/index_ja.html
#仮Runまで
###JAVA/JDKをいれる
以下のとかを参考にオラクルのサイトから落としてインストール
http://devnote.jp/jdk/8/osx/
JAVA_HOMEを設定する。今回はv1.8のJDKをいれたので
.bash_profileに以下の様に記述する
export JAVA_HOME=`/usr/libexec/java_home -v 1.8`
###Tomcatをいれる
brewでいれます
brew install tomcat
試しに起動する
$(brew --prefix)/bin/catalina start
safari等で
http://localhost:8080
にアクセスして、不細工ネコがでたらOK
終了しておく
$(brew --prefix)/bin/catalina stop
###Apolloダウンロード
以下のサイトからダウンロードして解凍する
https://github.com/GMOD/Apollo
出来たapollo-2.0.6ディレクトをhome直下とかに置く
###必要なツールをインストール
homebrewが入っていれば、まず以下のワンライナーでガッツリいれる
brew install wget git node.js npm
#####bowerを別個にいれる
npm install -g bower
#####grailsをいれる
grailsをいれたいが
grailsの最新版(v3)だとエラーがでるので
grails 2.5.5をsdkmanを使ってインストールする
以下の様に打つ
curl -s get.sdkman.io | bash
別ウインドウを開いて
source "$HOME/.sdkman/bin/sdkman-init.sh"
sdk install grails 2.5.5
#####grailsに関連するツールをいれる
sdkmanでインストールを続ける
sdk install gradle 2.11
sdk install groovy
sdk install maven
sdk install ant
###環境がそろっているか、仮runして確認する
cd ~/Apollo-2.0.6
./apollo run-local
| Server running. Browse to http://localhost:8080/apollo
とでればOK
仮起動中はコンソールが占拠されるので、
終了する時はCtrl + Cをおして中断させる。
#ユーザー管理を出来るようにする
仮ランだと設定がmacの起動毎にかわってしまってしまうのでポスグレと連携させて
おかしくならないようにする。
###環境変数を設定
めんどくさくないように、環境変数を設定します。
~/.bash_profile に以下の様に書き込みます。
export PGUSER=web_apollo_users_admin
export PGPASSWORD=password
export WEBAPOLLO_USER=web_apollo_admin
export WEBAPOLLO_PASSWORD=web_apollo_admin
export WEBAPOLLO_DATABASE=web_apollo_users
export JBROWSE_DATA_DIR=$HOME/Desktop/data
export WEBAPOLLO_DATA_DIR=$HOME/Desktop/annotations
##ポスグレデータベースを作成
ポスグレはwebapolloにログインするユーザーを管理するのに使っています。
最新のポスグレ(9.6)だと動かないので
9.5.5 をいれる
brew tap homebrew/versions
brew install homebrew/versions/postgresql95
rm -rf /usr/local/var/postgres && initdb /usr/local/var/postgres -E utf8
pg_ctl -D /usr/local/var/postgres start
###ポスグレユーザーを設定する
createuser -RDIElPS $PGUSER
webapolloのユーザー管理のためのDBを作成する
createdb -E UTF-8 -O $PGUSER $WEBAPOLLO_DATABASE -U `whoami`
##デプロイする
ポスグレをユーザー管理に使うので、それ用の設定ファイルを
apollo-config.groovy としてコピーする
cd Apollo-2.0.6/
cp sample-postgres-apollo-config.groovy apollo-config.groovy
コピーしたconfigファイルにポスグレ接続用のユーザーとパスワード、データベース名を書き込む
url = "jdbc:postgresql://localhost/$データベース名
を見逃しがちなので注意。
........
username = "<CHANGEME>"
password = "<CHANGEME>"
driverClassName = "org.postgresql.Driver"
dialect = org.hibernate.dialect.PostgresPlusDialect
url = "jdbc:postgresql://localhost/apollo"
}
...........
上記の部分を
以下の様に変える
........
username = "web_apollo_users_admin"
password = "password"
driverClassName = "org.postgresql.Driver"
dialect = org.hibernate.dialect.PostgresPlusDialect
url = "jdbc:postgresql://localhost/web_apollo_users"
}
...........
デプロイする
./apollo deploy
| Done creating WAR target/apollo-2.0.6.war
とでたらOK
~/Apollo-2.0.6/target
にapollo-2.0.6.warができているのでこれを、名前をapollo.warにかえて
/usr/local/Cellar/tomcat/8.5.11/libexec/webapps/
に移動させる
cp ./target/apollo-2.0.6.war /usr/local/Cellar/tomcat/8.5.11/libexec/webapps/apollo.war
###起動確認
tomcat を起動させて
$(brew --prefix)/bin/catalina start
http://localhost:8080/apollo
にアクセスしてwebapolloが起動したらOK
(tomcatの起動やapolloの展開に時間がかかるので気長にまってからアクセスする)
表示に従ってadminアカウントを作っておく
###tomcatのメモリーを増やす
tomcatのデフォルトのメモリー量では足りないので、メモリを増やす
mac mini は16Gメモリーがあるので以下の様にしました。
export CATALINA_OPTS="-Xmx12288m -Xms8192m \
-XX:PermSize=256m \
-XX:MaxPermSize=1024m \
-XX:ReservedCodeCacheSize=64m \
-XX:+UseG1GC \
-XX:+CMSClassUnloadingEnabled \
-Xloggc:$CATALINA_HOME/logs/gc.log \
-XX:+PrintHeapAtGC \
-XX:+PrintGCDetails \
-XX:+PrintGCTimeStamps"
このsetenv.shファイルを/usr/local/binにいれてtomcatを再起動すればよい