2010-01-29 4 views
1

J'ai joué avec une application rails et j'ai montré au client les mises à jour en le déployant sur heroku. Maintenant, le client veut l'installer sur son serveur ... en tant que site en ligne.déploiement de l'application rails à l'environnement de production

Heroku a fait l'application de rails de déploiement si simple que je ne peux pas envelopper ma tête à partir de zéro sur un serveur.

Pour les développeurs de rails expérimentés, que faut-il faire pour cela? Mon application utilise postgresql et le serveur est un serveur linux. Le client affirme avoir installé des rails sur le serveur. Est-ce que je dois juste installer postgresql ... créer la DB ... exécuter des migrations et voila? ou y a-t-il d'autres choses aussi? Jusqu'à présent, je travaillais avec la section de développement de database.yml ... maintenant, il va prendre la production?

Veuillez indiquer quelques pointeurs et/ou liens expliquant le processus.

Répondre

0

Y a-t-il une raison pour laquelle vous ne pouvez pas utiliser Heroku comme environnement de production?

Edit:

Si elles sont en cours d'exécution d'un serveur web php les chances sont qu'ils ont déjà un serveur apache qui fonctionne. Si tel est le cas, vous devez vous attendre à installer passenger et à configurer une nouvelle base de données. À ce stade, vous pouvez soit copier vous-même votre application, exécuter vos tâches de rake pour tout configurer, puis vous asseoir et vous détendre, ou vous pouvez passer du temps à apprendre à utiliser capistrano pour pouvoir déployer votre application de manière répétée .

Je suggère que ce dernier ... Capistrano n'est vraiment pas si difficile et en supposant que votre configuration d'application est relativement sain, les valeurs par défaut devraient vous atteindre 90% du chemin.

+0

ils wanté il hébergé sur "leur" serveur. pshsh. Je serais heureux d'utiliser heroku .. – Omnipresent

+0

Quel genre d'environnement ont-ils? Est-ce Windows ou Linux? – jonnii

+0

linux. ils ont déjà un site php dessus – Omnipresent

1

Je pense que la page web capistrano a un didacticiel décent sur la façon de commencer.

1

Eh bien, pensez à ceci: de quoi l'application rails a-t-elle besoin?

  1. Ruby
  2. Rails (la version que vous avez utilisé pour votre application!)
  3. gemmes Ruby que vous utilisez
  4. Rails plugins que vous utilisez
  5. Une base de données avec accès login/mot de passe approprié

Si vous utilisez la variable d'environnement RAILS_ENV et que vous la définissez en production, vous n'aurez pas à vous en soucier pour les étapes suivantes, sinon NE PAS OUBLIER DE FAIRE CECI POUR LE PRODUIT ENVIRONNEMENT ION!
Vous pouvez utiliser rake db: schema: load pour configurer la base de données, puis ... Assurez-vous de charger automatiquement au démarrage, assurez-vous d'avoir les données préchargées dont vous avez besoin, assurez-vous qu'elles sont accessibles de l'extérieur de partout où il doit être accessible.
Je ne sais pas s'il y a quelque chose dont vous avez besoin pour l'application des rails - mais bien sûr, Capistrano est une bonne idée, pour vous aider à maintenir l'application :)

1

Vous avez probablement besoin de décider quel logiciel de serveur vous allez l'utiliser en premier, parce que ce n'est pas quelque chose sur lequel Heroku vous a donné une décision. Quoi qu'il en soit, c'est facile car Phusion Passenger est le choix par défaut dans le monde des Rails maintenant. Passager est facile à configurer — il a probablement le meilleur programme d'installation de la ligne de commande que j'ai jamais vu — et la documentation est excellente. Slicehost possède une série d'articles qui couvrent la mise en place des différents bits dont vous avez besoin pour les différentes versions de Linux. Ils sont vraiment excellents:

http://articles.slicehost.com/search?q=rails

Vous aurez également besoin d'apprendre à utiliser Capistrano, qui est ce que la plupart des gens utilisent pour déployer des applications Rails.

Questions connexes