Я новичок OpenShift, и совсем недавно мне удалось развернуть базовое приложение Rails с консолью следующего поколения. я сделал несколько настроек в приложении, а именно создала домашний контроллер сOpenShift NextGen и Rails - произошла необработанная ошибка нижнего уровня
`rails g controller home index`
и обновленный файл config/routes.rb
, установив корневой маршрут root 'home#index'
вместо get 'home/index'
. Теперь локальный сервер рельсов правильно указывает на индексную страницу при работе в среде разработки, поэтому проблем нет. Но когда я нажал обновленное содержимое в мерзавца удаленного хранилища и и начал новую сборку с
oc start-build <app>
и перезагружает страницу с производственной среде OpenShift, ничего не отображается, но
An unhandled lowlevel error occurred. The application logs may have details.
Edit: команда oc logs dc/<app>
вернула меня это как «корень ошибки»:
#<RuntimeError: Missing `secret_key_base` for 'production' environment, set this value in `config/secrets.yml`>
Тогда мой config/secrets.yml
в разделе производства гласит:
# Do not keep production secrets in the repository,
# instead read values from the environment.
production:
secret_key_base: <%= ENV["SECRET_KEY_BASE"] %>
Теперь я предполагаю, что это связано с настройкой переменных среды в среде OpenShift. Я обнаружил команду
oc env dc/<app> <ENV_VARIABLE>=<value>
от this guide. Правильно ли это? Если да, то как создать правильное значение SECRET_KEY_BASE?
Любая помощь, конечно, высоко ценится, спасибо
Вы пытались на самом деле посмотреть журналы? https://developers.openshift.com/managing-your-applications/log-files.html – max
Я наткнулся на команду 'oc logs dc/' и напишет ответ на мой вопрос, спасибо;) –
Simon