2014-06-14 3 views
1

Désolé pour le titre confus, nouveau pour Node.js et Heroku, mais en essayant de le ramasser rapidement. Je possède actuellement un domaine, et mon premier objectif est de le configurer, donc je vais au domaine, il utilise Heroku pour se réveiller et lancer Node.js, lancer mon web.js, et afficher "Hello world ".Comment déployer le serveur Node.js en direct en utilisant Heroku

Je suis déjà passé par this heroku/node.js tutorial, et donc je comprends comment configurer des choses localement, pousser à la télécommande heroku, et exécuter mon serveur Node.js avec (je comprends bien?). Cependant, je n'ai rien trouvé pour la façon dont vous mettez vos fichiers Node.js sur votre serveur externe (donc, dans mon cas, mon domaine), et connectez le service de Heroku à ces fichiers, permettant à mon ordinateur local d'interagir avec le noeud sur mon serveur.

S'il y a des tutoriels ou des pages que vous recommanderiez, j'apprécierais. Choses Kinda et probablement confus sur un certain nombre de choses ici. Merci!

Répondre

2

Les applications Heroku ont leur propre référentiel git. Donc, vous push depuis votre répertoire git local vers la télécommande git d'heroku.

Configuration:

git remote add heroku <git://yourherokurepourl.git> 

puis à chaque fois de déployer:

git push heroku 

C'est tout nécessaire pour obtenir vos fichiers Node.js sur le serveur de Heroku. Heroku suit foreman en tant que lanceur de processus. foreman a besoin d'un fichier spécial dans la racine du projet appelé procfile. procfile a unix des commandes simples pour lancer des processus dans chaque ligne:

web : npm install && node app.js 

Alors, quand vous poussez votre projet au git de Heroku. Il recherchera procfile et lancera les processus définis ici. Vous pouvez placer plus de commandes ici. Mieux installer foreman sur votre machine locale/développement et tester en utilisant cela.

Dans les paramètres de l'application heroku, vous pouvez "lier" votre adresse www.domain.com à l'application de noeud exécutée sur le serveur d'heroku. Vous devez faire la même chose dans les paramètres du fournisseur de domaine. Le DNS va maintenant acheminer les demandes vers www.domain.com vers l'adresse IP du serveur de votre application.

Sur heroku, la configuration vit dans l'environnement. Beaucoup de process.env.* sont disponibles sur heroku. Vous pouvez simuler localement en fournissant .env fichiers à foreman.

Enfin, dans votre code node.js assurez-vous d'écouter sur la valeur fournie par process.env.PORT.

serveurs connectés:

  1. Utiliser le module Request d'appeler directement d'autres URL du serveur.
  2. Ou, Laissez le serveur s'abonner et publier sur un bus de service centralisé.
+0

Génial, merci pour la réponse, a fini par rechercher les domaines de liaison et ainsi de suite et le configurer correctement. Merci! – Befall

0

Vous décrivez l'exploitation de deux serveurs. Un sur Heroku, un "sur votre domaine".Je soupçonne que vous n'avez pas fait la connexion que vous pouvez simplement obtenir votre domaine pour pointer vers votre serveur Heroku. Contactez votre fournisseur de nom de domaine avec l'URL heroku que vous utilisez et ils peuvent le faire pour vous.

En effet, ils vont "diriger" votre domaine vers votre serveur Heroku node.js et à partir de là, il agira comme prévu.

Questions connexes