Ich verwende die Rails 4.2.5 App auf meinem lokalen Rechner (OS X El Capitan). Es hat im Entwicklungsmodus gut funktioniert.Mein Rails 4.2.5 App-Server verbindet sich weiterhin mit der Produktions-Datenbank statt der Entwicklungs-Datenbank im Entwicklungsmodus
Aber dann entschied ich zu sehen, wie es im Produktionsmodus funktioniert, also auf Produktion umgestellt und den Server laufen.
bundle install --deployment --without development test
bundle exec rake db:create RAILS_ENV=production
bundle exec rake db:migrate RAILS_ENV=production
bundle exec rake db:seed RAILS_ENV=production
bundle exec rake assets:precompile RAILS_ENV=production
bundle exec rails s -e production
Nicht alles sah gut aus. Also habe ich einige Änderungen vorgenommen, bis alle richtig funktionieren.
Danach musste ich einige Funktionen hinzugefügt, so wieder in den Entwicklungsmodus zurückgeschaltet und den Server laufen.
bundle install
bundle exec rake db:migrate
bundle exec rake db:seed
bundle exec rails s
Der Server läuft ohne ein Problem, aber ich fand, dass es mit der Produktion db statt Entwicklung db arbeitet.
Ich habe versucht, alle Caches durch Ausführen von bundle exec rake tmp:cache:clear
zu löschen, aber es hat nicht geholfen.
FYI, ich benutze Postgres für die Produktion und Entwicklung. Hier
ist die database.yml
Datei:
default: &default
adapter: postgresql
encoding: unicode
pool: 30
development:
<<: *default
username: <%= ENV['OATV_POSTGRES_USERNAME'] %>
password: <%= ENV['OATV_POSTGRES_PASSWORD'] %>
database: <%= ENV['OATV_POSTGRES_DATABASE_DEVELOPMENT'] %>
test:
<<: *default
username: <%= ENV['OATV_POSTGRES_USERNAME'] %>
password: <%= ENV['OATV_POSTGRES_PASSWORD'] %>
database: <%= ENV['OATV_POSTGRES_DATABASE_TEST'] %>
production:
<<: *default
url: <%= ENV['DATABASE_URL'] %>
Natürlich, ich habe eingestellt alle env auf meinem lokalen Rechner Vars, da ich in Entwicklungs-, Test- und Produktionsbetrieb testen müssen.
Was ist die mögliche Ursache hier?
Vielen Dank für eine Antwort im Voraus.
haben Sie den vorherigen daemonisierte Produktionsserver zu töten? – sixty4bit
@ sechzig4bit tut mir leid. Ich habe den Text falsch geschrieben. Ich habe den Produktionsserver nicht als Daemon ausgeführt. Modifizierte die Frage entsprechend. – artificis
Überprüfen Sie, ob RAILS_ENV in Ihr env exportiert wird. Vielleicht hast du das als Annehmlichkeit getan? –