metasearch運用手順

ローカルでの開発後のテスト環境でのテスト、及び本番環境へのデプロイは以下の手順で行う。

以下は容量が小さいファイルの更新手順(100Mb以下のファイルの更新手順)

  1. ローカル環境にm50v251n3サーバ上の/home/yoshitake/metasearch_repo をリモートリポジトリとして追加する。

    - linuxターミナル上なら例えば、

    mkdir /tmp/mylocalrepo; cd /tmp/mylocalrepo/; git init; git remote add metarepo /home/yoshitake/metasearch_repo/; git pull metarepo master;

    ユーザ名も変更しておく。

    git config --local user.name "Yoshitake"; git config --local user.email "akyoshita@g.ecc.u-tokyo.ac.jp"

  2. ローカル環境で開発が完了したら、上記リポジトリにPushする。(この時自動的にテスト環境へのデプロイとGithubへのPushが行われる)

    - linuxターミナル上なら例えば、

    cd /tmp/mylocalrepo/metasearch/script/; ...なにかファイルを編集...; git commit -m "コメントを書くこと"; git push metarepo

  3. (npmモジュールの更新などを行った場合のみ) cd /home/yoshitake/metasearch_dev/metasearch に移動し、npm install で依存関係を解消する。
  4. cd /home/yoshitake/metasearch_dev/metasearch に移動し、npm start でテスト環境のアプリケーションを起動する。
  5. https://meta.fs.a.u-tokyo.ac.jp/metasearch_dev/ にアクセスし、問題なく動作するかを確認する。
  1. まだ本番環境を構築していないときは、

    mkdir /home/yoshitake/metasearch_test; cd /home/yoshitake/metasearch_test; git init; git remote add origin /home/yoshitake/metasearch_repo;

    を実行しておく。

  2. また、既に実行されているMetaSearchDBを停止させておく。forever listで出てくるのはMetaSearchDBやMitoSearchがあるので、どれがMetaSearchDBかを調べるため、pidの数字に対してpwdx <pid>とpwdxを使って実行ディレクトリを調べて、/home/yoshitake/metasearch/metasearchで実行されているプロセスのuid前の数字(0,1,2,…程度の値)を割り出す。それからforever stop <uid前の数字>で停止できる。停止まで数分程度かかる様子。
  3. 本番環境に移動する。cd /home/yoshitake/metasearch/metasearch
  4. リモートリポジトリ(/home/yoshitake/metasearch_repo)から、最新版をPull。git pull (初回構築時はgit pull origin masterの必要あり)
  5. もし新規に構築した場合、scriptフォルダの中のファイルがいくつか不足しているので、*.sifファイルコピーや、db*へのシンボリックリンク作成などを、他の実行環境を見て適宜行う。
  6. git pullが上手くできない場合(基本的にデプロイ後スクリプトの修正が入るとpullできないので、その場合は2の代わりに3を行う)、git fetch origin master でリモートの最新の状態を取り込んだ後、git reset --hard origin/master でリセットをおこなう。
  7. 最新版の取り込みを行った後、次の2つのスクリプトを修正する。

    ・app.js:62行目~63行目で開放するポート番号を修正。63行目をコメントアウトし、64行目からコメントを外す。

    ・metasearch_exec.sh:19行目~20行目で配信時に添付するURLを修正。19行目をコメントアウトし、20行目からコメントを外す。

  8. アプリケーションのあるディレクトリに移動。cd /home/yoshitake/metasearch/metasearch その後、依存関係を解消する。npm install
  9. forever start \--workingDir /home/yoshitake/metasearch/metasearch/ -c "npm start" ./ で再起動。
    ※20211012追記:5が上手くいかない時は取り敢えずrebootした方が楽。foreverを止めてもPortを占有してしまっているので・・
  10. これでデプロイ完了。

ローカル環境、テスト環境(/home/yoshitake/metasearch_dev/metasearch)、本番環境(/home/yoshitake/metasearch/metasearch)にそれぞれ手動でコピーする。

InputファイルのDB更新の際はmetasearch_exec.sh上のdbPath変数を変更してあげればよい(絶対パス)

  • metasearch運用手順.1643249497.txt.gz
  • 最終更新: 2022/01/27 02:11
  • by 118.240.79.152