Гибкая среда Ruby AppEngine, ошибка запуска приложения: / usr / bin / env: 'ruby2.5': такого файла или каталога нет - PullRequest
0 голосов
/ 26 июня 2018

Я пытаюсь развернуть приложение только для API Rails 5 в AppEngine Flex со стандартной средой исполнения Ruby, и в самом конце я получаю следующую ошибку:

Updating service [default] (this may take several minutes)...failed.                                                                                                                                                                                                                         
ERROR: (gcloud.app.deploy) Error Response: [9] 
Application startup error:
/usr/bin/env: 'ruby2.5': No such file or directory

I 'Я указал ruby ​​'2.5.1' в моем Gemfile, и я добавил явный файл .ruby-version в корень моего проекта, также установленного на 2.5.1.

У меня нет другой отладочной информации, доступной дляменя в логах, другой фантазии нет.Моя команда точки входа:

bundle exec rails server Puma -p $PORT

Я могу предоставить более подробную информацию, если это необходимо, не зная, что еще может иметь отношение.Есть указатели?Насколько я могу судить, ничто с моей стороны не требует версии ruby, которая была бы конкретно во время выполнения.

Спасибо!

РЕДАКТИРОВАТЬ: Вот мой файл app.yaml

entrypoint: bundle exec rails server Puma -p $PORT
env: flex
runtime: ruby

ОБНОВЛЕНИЕ:

Я могу убедиться, что у меня возникают похожие проблемы при попытке выполнить грабли, такие как db: migrate:

--------- EXECUTE COMMAND ----------
bundle exec rake db:migrate
/usr/bin/env: 'ruby2.5': No such file or directory
ERROR
ERROR: build step 0 "gcr.io/google-appengine/exec-wrapper:latest" failed: exit status 127
--------------------------------------------------------------------------------------------------------------------------------------------------------

1 Ответ

0 голосов
/ 03 июля 2018

ОК. Теперь я вижу, что произошло после локальной отладки образа докера.Поскольку я был в Ubuntu и использовал системный ruby ​​для установки гемов, он включил /usr/bin/env ruby2.5 в каждый исполняемый скрипт, который был включен в мое приложение.Я удалил все гемы и переключился на rbenv для управления версией Ruby, которая снизила это странное поведение между ruby ​​unbuntu и моим приложением.

...