Szukaj…
Usługa Upstart
W tym przewodniku wdrażania założono, że korzystasz z serwera Ubuntu i albo sam się hostujesz, albo używasz dostawcy infrastruktury jako usługi (IaaS), takiego jak Amazon Web Services lub Rackspace. Twój serwer Ubuntu musi mieć uruchomionego demona do uruchamiania innych aplikacji, dla których zalecamy usługę Upstart. Możesz znaleźć więcej informacji o Upstart za pomocą następujących linków:
Upstart - Pierwsze kroki
Rozpoczęcie pracy z Upstart Scripts na Ubuntu
UbuntuBootupHowTo
Upstart Intro, książka kucharska i najlepsze praktyki
Uruchom NodeJS jako usługę na Ubuntu Karmic
Kopiowanie plików na serwer, a następnie kompilacja
Jednym z preferowanych sposobów wdrażania na serwerze jest użycie Git lub GitHub. Zasadniczo wymaga to zalogowania się na serwerze, przejścia do katalogu, z którego chcesz uruchomić aplikację, a następnie klonowania plików bezpośrednio z GitHub. Następnie zbudujesz aplikację na serwerze. Takie podejście zapewnia prawidłowe budowanie plików specyficznych dla platformy, ale wymaga zainstalowania Meteor na serwerze (ponad 500 MB) i może spowodować nieznacznie różne kompilacje produkcyjne, jeśli twoje serwery są nieco inne.
cd /var/www
sudo git clone http://github.com/myaccount/myapp.git
cd /var/www/myapp
meteor build --directory ../myapp-production
sudo service myapp restart
Pakiet następnie skopiuj na serwer
Możesz też zbudować aplikację, a następnie ją wdrożyć.
cd myapp
meteor build --directory ../output
cd ..
scp output -r username@destination_host:/var/www/myapp-production
Pisanie skryptu upstart
Będziesz potrzebował skryptu upstart w swoim /etc/init/ directory
. Nazwij go nazwą aplikacji, kończącą się na .conf
, na przykład /etc/init/myapp.conf
. Podstawowy skrypt upstart wygląda mniej więcej tak:
## /etc/init/myapp.conf
description "myapp.mydomain.com"
author "[email protected]"
# Automatically Run on Startup
start on started mountall
stop on shutdown
# Automatically Respawn:
respawn
respawn limit 99 5
script
export HOME="/root"
export MONGO_URL='mongodb://myapp.compose.io:27017/meteor'
export ROOT_URL='http://myapp.mydomain.com'
export PORT='80'
exec /usr/local/bin/node /var/www/myapp/main.js >> /var/log/myapp.log 2>&1
end script
Skrypt Upstart dla zestawów replik
Jeśli korzystasz z zestawu replik lub potrzebujesz oddzielić bazę danych, potrzebujesz skryptu upstart, który wygląda mniej więcej tak:
# /etc/init/myapp.conf
description "myapp.mydomain.com"
author "[email protected]"
# used to be: start on startup
# until we found some mounts weren't ready yet while booting:
start on started mountall
stop on shutdown
# Automatically Respawn:
respawn
respawn limit 99 5
script
# upstart likes the $HOME variable to be specified
export HOME="/root"
# our example assumes you're using a replica set and/or oplog integreation
export MONGO_URL='mongodb://mongo-a,mongo-b,mongo-c:27017/?replicaSet=meteor'
# root_url and port are the other two important environment variables to set
export ROOT_URL='http://myapp.mydomain.com'
export PORT='80'
exec /usr/local/bin/node /var/www/production/main.js >> /var/log/node.log 2>&1
end script
Uruchamianie skryptu Upstart
Na koniec musisz uruchomić demona Upstart i zainicjować aplikację jako usługę.
sudo service myapp start
Konfigurowanie serwera do obsługi wielu aplikacji Meteor
https://www.phusionpassenger.com/
https://github.com/phusion/passenger
https://github.com/phusion/passenger/wiki/Phusion-Passenger:-Meteor-tutorial#wiki-installing