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



Modified text is an extract of the original Stack Overflow Documentation
Licentie onder CC BY-SA 3.0
Niet aangesloten bij Stack Overflow