Recherche…


Service de démarrage

Ce guide de déploiement suppose que vous utilisez un serveur Ubuntu et que vous utilisez soit un hébergement autonome, soit un fournisseur IaaS (Infrastructure as a Service), tel que Amazon Web Services ou Rackspace. Votre serveur Ubuntu doit exécuter un démon pour lancer d'autres applications, pour lesquelles nous recommandons le service Upstart. Vous pouvez trouver plus sur Upstart avec les liens suivants:

Upstart - Pour commencer
Premiers pas avec les scripts de démarrage sur Ubuntu
UbuntuBootupHowTo
Intro, livre de recettes et meilleures pratiques
Exécuter NodeJS en tant que service sur Ubuntu Karmic

Copier des fichiers sur votre serveur puis générer

Une approche privilégiée du déploiement sur un serveur consiste à utiliser Git ou GitHub. Cela implique essentiellement de se connecter à votre serveur, en allant dans le répertoire à partir duquel vous souhaitez exécuter votre application, puis en clonant vos fichiers directement à partir de GitHub. Vous créez ensuite votre application sur le serveur. Cette approche garantit que les fichiers spécifiques à la plate-forme sont correctement construits, mais nécessite que Meteor soit installé sur le serveur (plus de 500 Mo) et que des versions légèrement différentes risquent de se terminer en production si vos serveurs sont légèrement différents.

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 puis copier sur le serveur

Vous pouvez également créer votre application, puis la déployer.

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

Écrire votre script de démarrage

Vous aurez besoin d'un script de démarrage dans votre /etc/init/ directory . Nommez-le avec le nom de votre application, se terminant par .conf , tel que /etc/init/myapp.conf . Le script de démarrage de base ressemble à ceci:

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

Script de démarrage pour les jeux de réplicas

Si vous exécutez un jeu de réplicas ou si vous avez besoin de partager votre base de données, vous aurez besoin d'un script qui ressemble à ceci:

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

Exécuter votre script de démarrage

Enfin, vous devez démarrer le démon Upstart et initialiser votre application en tant que service.

sudo service myapp start

Configuration d'un serveur pour héberger plusieurs applications Meteor

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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow