web-dev-qa-db-fra.com

Rails comment basculer entre le mode dev et le mode production?

Comment puis-je basculer en Rails entre le mode dev et le mode production?

et comment puis-je déployer la base de données en production?

25
Felix

Si vous utilisez Rails 4.2 alors vous devez savoir Rails utilise "spring" pour le rendre plus rapide. Donc dans ce cas, vous pouvez utiliser les commandes suivantes:

Pour le développement, lancez

Rails 4.2
    bin\Rails s
Otherwise
   Rails s

Pour la production, lancez

Rails 4.2
    bin\Rails s -e production
Otherwise    
    Rails s -e production

Pour configurer la base de données de production si la base de données en production n'existe pas, exécutez

Rails 4.2
    bin/rake db:create db:migrate Rails_ENV=production
Otherwise
    rake db:create db:migrate Rails_ENV=production
    bundle exec rake db:create db:migrate Rails_ENV=production

Si DB existe déjà:

Rails 4.2
  bin/rake db:migrate Rails_ENV=production
Otherwise
  rake db:migrate Rails_ENV=production
  OR
  bundle exec rake db:migrate Rails_ENV=production

De plus, si vous souhaitez arrêter le printemps ou démarrer le printemps, utilisez les commandes suivantes:

 bin/spring stop
 bin/spring start
55
shinesecret

Démarrez le serveur à l'aide de -e option.

Rails server -e production

Et vous ne pouvez pas déployer de base de données. vous avez besoin de migrations pour fonctionner en production.

15
jon snow

Pour démarrer votre serveur en mode développement, il vous suffit d'exécuter Rails s il démarrera votre application en mode dev ainsi que votre base de données.

Pour démarrer votre serveur en mode production, vous devez migrer votre base de données avec bundle exec rake db:migrate Rails_ENV=production puis démarrez votre serveur en production à l'aide de Rails s -e production ou Rails_ENV=production Rails s

5
Stéphane

Dans Rails 5+ goto

config/puma.rb 

Vous pouvez trouver la ligne ci-dessous

environment ENV.fetch("Rails_ENV") { "development" }

changer "développement" en "production"

2
Ali Akbar