Mettre en ligne un site Angular/Node

Garig 64 Messages postés vendredi 12 juin 2009Date d'inscription 30 septembre 2017 Dernière intervention - 10 sept. 2017 à 11:54 - Dernière réponse : mamiemando 28088 Messages postés jeudi 12 mai 2005Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention
- 12 sept. 2017 à 09:44
Bonjour

Je voudrais mettre une application angularJS/nodeJS en ligne.

J'utilise Yeoman pour mon application AngularJS

Avant de mettre mon application en ligne, j ai tapé la commande "grunt build" pour générer tous les fichiers nécessaires qui sont maintenant contenus dans un dossier /dist

Je fais donc pointer mon nom de domaine vers ce dossier /dist

Mon application fonctionne bien mais le serveur Node ne se lance pas automatiquement.

En effet en local, je dois taper
node server/server.js
pour lancer mon serveur. Mais en ligne c'est pas automatique.

Que dois-je faire pour que mon serveur nodeJS démarre automatiquement quand je me rends sur mon site web en ligne?


Merci pour vos réponses

Afficher la suite 
64Messages postés vendredi 12 juin 2009Date d'inscription 30 septembre 2017 Dernière intervention

1 réponse

Répondre au sujet
mamiemando 28088 Messages postés jeudi 12 mai 2005Date d'inscriptionModérateurStatut 12 décembre 2017 Dernière intervention - Modifié par mamiemando le 12/09/2017 à 09:47
0
Utile
Bonjour,

Je pars du principe dans ce qui suit que le serveur est sous linux.

La solution la plus simple (mais pas la plus propre) consiste à lancer cette commande au démarrage, par exemple par l'intermédiaire du fichier
/etc/rc.local
. Cependant, attention à certains points :
- utilise des chemins absolus
- les commandes lancées dans ce fichier ne doivent pas être bloquante (i.e. que si tu la lances dans un terminal, elle te rende la main) sans quoi ton linux va rester bloqué dessus au démarrage et tu seras obligé de les annuler avec ctrl c. Une solution consiste alors à lancer les commandes bloquantes avec
nohup
.

La solution la plus propre consiste à écrire ton propre service (e.g.
/etc/init.d/nodejs
) en adaptant le script qui est présenté ici. Ainsi tu pourras par la suite lancer des commandes
service nodejs start
,
service nodejs restart
,
service nodejs stop
.

Bonne chance
Commenter la réponse de mamiemando