SPARQLthon46/togogenome-proxy
提供:TogoWiki
sparql-proxy を dev.togogenome.org/sparql にデプロイする。
目次 |
インストール
インストール先は、例として /opt/proxy/{bin,git,src,log,cache} というディレクトリ構成とする。
% mkdir -p /opt/proxy % cd /opt/proxy % mkdir bin % mkdir cache % mkdir git % mkdir log % mkdir src % cd src % curl -O https://nodejs.org/dist/v6.3.1/node-v6.3.1-linux-x64.tar.xz % tar xvf node-v6.3.1-linux-x64.tar.xz % cd ../bin % ln -s ../src/node-v6.3.1-linux-x64/bin/* . % cd ../git % git clone git@github.com:enishitech/sparql-proxy.git % cd sparql-proxy % npm install
なお、LTS 版の Node.js v4..4.7 では依存ライブラリのインストールに失敗するので、v0.12.5 か、上記のように最新版 (Node.js のサイト https://nodejs.org/en/download/ 参照) を使うのがよさそう。
テスト
プロキシを起動するポート番号、バックエンドの実際のSPARQLエンドポイント、管理ユーザの ID とパスワードを指定して起動。
% PORT=3000 SPARQL_BACKEND=http://sparql.uniprot.org/sparql ADMIN_USER=ore ADMIN_PASSWORD=himitsu npm start
として、http://localhost:3000/ を開き、
PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT ?image WHERE { ?tax_id foaf:depiction ?image . ?image a foaf:Image . } LIMIT 10
を検索。結果が出ることを確認したら、http://localhost:3000/admin に↑で指定した user, password でログインして管理画面を開く。 指定したクエリ、実行時間などが表示されていることを確認。
起動スクリプト
#!/bin/sh PREFIX=/opt/proxy export PATH="$PREFIX/bin:$PATH" ( cd $PREFIX/git/sparql-proxy QUERY_LOG_PATH=$PREFIX/log/proxy.log \ CACHE_STORE=file \ CACHE_STORE_PATH=$PREFIX/cache \ MAX_CONCURRENCY=3 \ TRUST_PROXY=true \ PORT=ポート番号 \ SPARQL_BACKEND=SPARQLエンドポイントのURI \ ADMIN_USER=管理ユーザ名 \ ADMIN_PASSWORD=パスワード \ $PREFIX/bin/npm start 2>&1 >> $PREFIX/log/server.log & )