Suche…


Upstart-Service

In diesem Bereitstellungshandbuch wird davon ausgegangen, dass Sie einen Ubuntu-Server verwenden und sich entweder selbst hosten oder einen Infrastructure as a Service-Anbieter (IaaS) wie Amazon Web Services oder Rackspace verwenden. Auf Ihrem Ubuntu-Server muss ein Daemon ausgeführt werden, um andere Apps zu starten, für die wir den Upstart-Dienst empfehlen. Weitere Informationen zu Upstart finden Sie unter den folgenden Links:

Upstart - Erste Schritte
Erste Schritte mit Upstart-Skripts unter Ubuntu
UbuntuBootupHowTo
Upstart Intro, Kochbuch und Best Practices
Führen Sie NodeJS As a Service auf Ubuntu Karmic aus

Dateien auf den Server kopieren und dann erstellen

Ein bevorzugter Ansatz für die Bereitstellung auf einem Server ist die Verwendung von Git oder GitHub. Dazu müssen Sie sich auf Ihrem Server anmelden, in das Verzeichnis wechseln, von dem aus Sie Ihre App ausführen möchten, und dann Ihre Dateien direkt aus GitHub klonen. Sie erstellen dann Ihre App auf dem Server. Dieser Ansatz stellt sicher, dass plattformspezifische Dateien korrekt erstellt werden, erfordert jedoch die Installation von Meteor auf dem Server (mehr als 500 MB) und kann dazu führen, dass in der Produktion etwas andere Builds entstehen, wenn sich die Server etwas unterscheiden.

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

Bundle, dann auf Server kopieren

Alternativ können Sie Ihre Anwendung erstellen und anschließend bereitstellen.

cd myapp
meteor build --directory ../output
cd ..
scp output -r username@destination_host:/var/www/myapp-production

Schreiben Sie Ihr Upstart-Skript

Sie benötigen ein Upstart-Skript in Ihrem /etc/init/ directory . .conf es mit dem Namen Ihrer App und enden mit .conf , z. B. /etc/init/myapp.conf . Das grundlegende Upstart-Skript sieht in etwa so aus:

## /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

Upstart-Skript für Replikatsätze

Wenn Sie einen Replikatsatz ausführen oder Ihre Datenbank abteilen müssen, benötigen Sie ein Upstart-Skript, das ungefähr so ​​aussieht:

# /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

Ausführen Ihres Upstart-Skripts

Zum Schluss müssen Sie den Upstart-Daemon starten und Ihre App als Dienst initialisieren.

sudo service myapp start

Einrichten eines Servers zum Hosten mehrerer Meteor-Apps

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
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow