meteorのプロジェクトをpassengerで二回目以降のデプロイ
meteorのプロジェクトの二回目以降のデプロイ方法を書かせていただきます。
初回のデプロイと二回目のデプロイは微妙にすることが違うのでご注意ください。
一回目の場合は下記記事をご参照ください。
youmjww.hatenablog.jp
この記事は、前回同様
Deploying a Meteor app on Ubuntu 16.10 (with APT) on a Linux/Unix production server with Passenger open source in Standalone mode - Passenger + Meteor deployment tutorial - Passenger Library
上記サイトを参考にして筆者が実際に構築をし、必要と思われるものを書き出しています。
デプロイ前の準備
meteorのプロジェクトをビルドしてサーバーに送信する
まず、ローカル環境でmeteorのパッケージをビルドします。
#ローカル環境 #ビルド $meteor build --server-only ../new_package && mv ../new_package/*.tar.gz package.tar.gz #ファイルをアップロード $scp package.tar.gz adminuser@yourserver:~/
サーバーにログイン
$ssh myappuser@yourserver.com
デプロイ
tarの解凍
$mkdir -p /var/www/myapp/tmp $cd /var/www/myapp/tmp $tar xzf ~/package.tar.gz
passengerの設定ファイルをコピー
このファイルは何回も使いまわすのでどこかにバックアップを取っておいたほうがいいかも知れないですね。
$cp /var/www/myapp/bundle/Passengerfile.json /var/www/myapp/tmp/bundle/
依存関係のインストール
$cd /var/www/myapp/tmp/bundle/programs/server $npm install --production $npm prune --production
アプリを更新する
もしちゃんと更新できなかった時のためにバックアップを取っておきます。
$mv /var/www/myapp/bundle /var/www/myapp/bundle.old $mv /var/www/myapp/tmp/bundle /var/www/myapp/bundle $passenger-config restart-app /var/www/myapp/bundle
古いバージョンを削除
新しいバージョンのアプリが動いているのを確認できたら古い方は削除してください。
$rm -rf /var/www/myapp/bundle.old