メトリクスを学び、私は小さなリモートVPSを持っています。Ubuntuサーバーの起動時にmeteorを実行する方法
私がしたい:gitリポジトリ私の流星プロジェクトから引っ張っ
- 設定オートを。
- 私の流星プロジェクトをサービスとして実行するスクリプトを自動起動に入れます。たとえば、
は、私のサーバーは、Ubuntuの12.04
meteor run -p 80 -- production
ある
あなたは成り上がりであるUbuntuの道を、使用する必要がありメトリクスを学び、私は小さなリモートVPSを持っています。Ubuntuサーバーの起動時にmeteorを実行する方法
私がしたい:gitリポジトリ私の流星プロジェクトから引っ張っ
は、私のサーバーは、Ubuntuの12.04
meteor run -p 80 -- production
ある
あなたは成り上がりであるUbuntuの道を、使用する必要があり:デーモンジョブを定義する方法
http://upstart.ubuntu.com/ http://manpages.ubuntu.com/manpages/lucid/man5/init.5.html
:
http://newcome.wordpress.com/2012/02/26/running-programs-as-linux-daemons-using-upstart/
それが役に立てば幸い:)
あなたの成り上がりファイルは、多かれ少なかれ、次のようになります。
# meteorjs - meteorjs job file
description "MeteorJS"
author "Igor S"
# When to start the service
start on runlevel [2345]
# When to stop the service
stop on runlevel [016]
# Automatically restart process if crashed
respawn
# Essentially lets upstart know the process will detach itself to the background
expect fork
# Run before process
pre-start script
cd PATH_TO_METEOR_APP
echo ""
end script
# Start the process
exec meteor run -p 80 --help -- production
これは私のmeteorjs.confファイルである - 正常に動作します。 私は以前にすべての問題を説明しましたが、この変形で修正されました。 は、それが誰かの役に立てば幸い:)
私はここでprintenv
# meteorjs - meteorjs job file
description "MeteorJS"
author "Alex Babichev"
# When to start the service
start on runlevel [2345]
# When to stop the service
stop on runlevel [016]
# Automatically restart process if crashed
respawn
# Essentially lets upstart know the process will detach itself to the background
expect fork
chdir /home/dev/www/test
script
export MONGO_URL=mongodb://localhost:27017/meteor
export PATH=/opt/local/bin:/opt/local/sbin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
export PWD=/home/sputnik
export NODE_PATH=/usr/lib/nodejs:/usr/lib/node_modules:/usr/share/javascript
export HOME=/home/sputnik
echo "---- start ----"
cd /home/dev/www/test
exec mrt
end script
mongoのURLを渡しておらず、最後の行を変更しました: 'exec meteor -p domain.com :8080'も 'chmod + x/etc/init/meteorjs.conf'にしなければなりませんでした:) Thx – Guidouil
' env HOME =/home/sputnik'スクリプト内のスクリプトが嫌いです。 –
によって得たすべてのEXPORT
変数私が何をすべきかです:
description "meteor app server"
start on runlevel [2345]
stop on runlevel [06]
respawn
respawn limit 10 5
pre-start script
set -e
rm -f /path/to/your/app/.meteor/local/db/mongod.lock
end script
exec /bin/su - ec2-user -c '/path/to/your/app/meteor_server.sh'
post-stop script
pkill -f meteor
end script
meteor_server.sh
スクリプトが含まれています
cd /path/to/your/app/; meteor run -p 3000 --production
をに確認してくださいのmeteor_server.sh
スクリプトを開き、3つの場所でアプリへのパスを変更します。このスクリプトは、停止したときにすべての流星タスクも殺します。そのため、あなたのサーバー上で1つの流星アプリを実行するだけで動作します。私は流星のアプリをすぐにnginxを使用してこの方法で実行しているが、ノードは、多くのメモリを消費するようだ。
起動時に隕石をMac OSXで走らせるには? – crapthings
Thx。うまく動作します –
'exec myprocess'とは何ですか? – gor