Zoeken…
Opstartservice
In deze implementatiegids wordt ervan uitgegaan dat u een Ubuntu-server gebruikt en zelfhosting uitvoert of een Infrastructure as a Service-provider (IaaS) gebruikt, zoals Amazon Web Services of Rackspace. Uw Ubuntu-server moet een daemon uitvoeren voor het starten van andere apps, waarvoor we de Upstart-service aanbevelen. U kunt meer over Upstart vinden via de volgende links:
Upstart - Aan de slag
Aan de slag met Upstart Scripts op Ubuntu
UbuntuBootupHowTo
Upstart introductie, kookboek en praktische tips
Voer NodeJS As a Service uit op Ubuntu Karmic
Bestanden naar uw server kopiëren en vervolgens bouwen
Een voorkeursbenadering voor implementatie op een server is het gebruik van Git of GitHub. Dit houdt in feite in dat u zich aanmeldt bij uw server, naar de map gaat van waaruit u uw app wilt uitvoeren en vervolgens uw bestanden rechtstreeks van GitHub wilt klonen. U bouwt vervolgens uw app op de server. Deze aanpak zorgt ervoor dat platformspecifieke bestanden correct worden gebouwd, maar vereist dat Meteor op de server wordt geïnstalleerd (500+ MB) en kan resulteren in iets andere builds in productie als uw servers iets anders zijn.
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
Bundel vervolgens kopiëren naar server
U kunt ook uw toepassing bouwen en deze vervolgens implementeren ..
cd myapp
meteor build --directory ../output
cd ..
scp output -r username@destination_host:/var/www/myapp-production
Uw opstartscript schrijven
Je hebt een opstartscript nodig in je /etc/init/ directory
. Noem het met de naam van uw app, eindigend op .conf
, zoals /etc/init/myapp.conf
. Het standaard opstartscript ziet er ongeveer zo uit:
## /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
Start script voor replicasets
Als u een replicaset uitvoert of uw database wilt shard, wilt u een opstartscript dat er ongeveer zo uitziet:
# /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
Uw opstartscript uitvoeren
Ten slotte moet u de Upstart-daemon starten en uw app initialiseren als een service.
sudo service myapp start
Een server instellen om meerdere Meteor-apps te hosten
https://www.phusionpassenger.com/
https://github.com/phusion/passenger
https://github.com/phusion/passenger/wiki/Phusion-Passenger:-Meteor-tutorial#wiki-installing