Я использую Rails 6.0.0 для разработки API, и у меня есть несколько БД в database.yml . В локальной системе все работает нормально, но когда я создаю docker образ для развертывания приложения, я получаю следующую ошибку:
sidekiq_1 | => Booting Puma
sidekiq_1 | => Rails 6.0.0 application starting in production
sidekiq_1 | => Run `rails server --help` for more startup options
web_1 | => Booting Puma
web_1 | => Rails 6.0.0 application starting in production
web_1 | => Run `rails server --help` for more startup options
web_1 | Exiting
web_1 | /usr/local/bundle/gems/activerecord-6.0.0/lib/active_record/connection_adapters/connection_specification.rb:251:in `resolve_symbol_connection': The `course_competency` database is not configured for the `production` environment. (ActiveRecord::AdapterNotSpecified)
web_1 |
web_1 | Available databases configurations are:
web_1 |
web_1 | default
web_1 | development
web_1 | test
web_1 | production
sidekiq_1 | Exiting
Я прочитал это комментарии и также отформатировал database.yml
файл для исправления любого отступа. Но все равно я получаю ту же ошибку и не могу развернуть.
database.yml
default: &default
adapter: postgresql
encoding: unicode
pool: 25
username: uuuuuuuu
password: pppppppp
host: localhost
port: 5432
development:
primary:
<<: *default
database: course_development_dev_new
migrations_paths: db/migrate
users_sync:
<<: *default
database: course_database_usersync_dev_new
migrations_paths: db/users_sync_migrations
course_competency:
<<: *default
database: course_competency_development_dev_new
migrations_paths: db/course_competency_migrations
test:
primary:
<<: *default
database: course_test_local
users_sync:
<<: *default
database: course_database_usersync_test_new
course_competency:
<<: *default
database: course_competency_development_test_new
production:
primary:
<<: *default
host: <%= ENV['COURSE_DATABASE_HOST'] %>
port: 5432
database: course
username: course
password: <%= ENV['COURSE_DATABASE_PASSWORD'] %>
migrations_paths: db/migrate
users_sync:
<<: *default
host: <%= ENV['COURSE_USERSYNC_DATABASE_HOST'] %>
port: 5432
database: <%= ENV['COURSE_USERSYNC_DATABASE_NAME'] %>
username: <%= ENV['COURSE_USERSYNC_DATABASE_USER_NAME'] %>
password: <%= ENV['COURSE_USERSYNC_DATABASE_PASSWORD'] %>
migrations_paths: db/users_sync_migrations
course_competency:
<<: *default
host: <%= ENV['COURSE_GLOBAL_DATABASE_HOST'] %>
port: 5432
database: <%= ENV['COURSE_GLOBAL_DATABASE_NAME'] %>
username: <%= ENV['COURSE_GLOBAL_DATABASE_USERNAME'] %>
password: <%= ENV['COURSE_GLOBAL_DATABASE_PASSWORD'] %>
migrations_paths: db/COURSE_competency_migrations
ApplicationRecord
Я не использую connects_to
здесь (как предложено здесь) , надеюсь, что теперь проблема?
class ApplicationRecord < ActiveRecord::Base
self.abstract_class = true
end
Куда я иду не так ?? Любой ответ будет полезен.