**文書の過去の版を表示しています。**
Metasearch運用手順
ローカルでの開発後のテスト環境でのテスト、及び本番環境へのデプロイは以下の手順で行う。
以下は容量が小さいファイルの更新手順(100Mb以下のファイルの更新手順)
テスト環境でのテスト
- ローカル環境に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"
- ローカル環境で開発が完了したら、上記リポジトリにPushする。(この時自動的にテスト環境へのデプロイとGithubへのPushが行われる)
- linuxターミナル上なら例えば、
cd /tmp/mylocalrepo/metasearch/script/; ...なにかファイルを編集...; git commit -m "コメントを書くこと"; git push metarepo
- (npmモジュールの更新などを行った場合のみ)
cd /home/yoshitake/metasearch_dev/metasearch
に移動し、npm install
で依存関係を解消する。 cd /home/yoshitake/metasearch_dev/metasearch
に移動し、npm start
でテスト環境のアプリケーションを起動する。- https://meta.fs.a.u-tokyo.ac.jp/metasearch_dev/ にアクセスし、問題なく動作するかを確認する。
本番環境へのデプロイ
- 本番環境に移動する。
cd /home/yoshitake/metasearch/metasearch
- リモートリポジトリ(/home/yoshitake/metasearch_repo)から、最新版をPull。
git pull
- 2が上手くできない場合(基本的にデプロイ後スクリプトの修正が入るとpullできないので、その場合は2の代わりに3を行う)、
git fetch origin master
でリモートの最新の状態を取り込んだ後、git reset --hard origin/master
でリセットをおこなう。 - 最新版の取り込みを行った後、次の2つのスクリプトを修正する。
・app.js:62行目~63行目で開放するポート番号を修正。63行目をコメントアウトし、64行目からコメントを外す。
・metasearch_exec.sh:19行目~20行目で配信時に添付するURLを修正。19行目をコメントアウトし、20行目からコメントを外す。
- アプリケーションのあるディレクトリに移動。
cd /home/yoshitake/metasearch/metasearch
その後、依存関係を解消する。npm install
その後、forever stop <id>
でアプリケーションを一旦を停止したのち(idはforever list
で分かる)、forever start \--workingDir /home/yoshitake/metasearch/metasearch/ -c "npm start" ./
で再起動。
※20211012追記:5が上手くいかない時は取り敢えずrebootした方が楽。foreverを止めてもPortを占有してしまっているので・・ - これでデプロイ完了。
大容量ファイルの運用
ローカル環境、テスト環境(/home/yoshitake/metasearch_dev/metasearch)、本番環境(/home/yoshitake/metasearch/metasearch)にそれぞれ手動でコピーする。
InputファイルのDB更新の際はmetasearch_exec.sh上のdbPath変数を変更してあげればよい(絶対パス)