После обновления моего Ruby до 2.6.5 на AWS Ubuntu Passenger все еще ищет Ruby 2.6.1 - PullRequest
0 голосов
/ 01 марта 2020

Я обновил свою Ruby версию до 2.6.5 с 2.6.1, но когда я пытаюсь запустить NGINX, я получаю эту ошибку в журналах ниже (раздел: Ошибка). Когда я проверил мою версию по умолчанию Ruby в системе, она действительно установила Ruby версию 2.6.5.

В соответствии с выводом в журналах выглядит так, как будто мне нужно обновить переменную start_command в моей конфигурации, но я не уверен, где это находится. Может кто-нибудь предложить какой-нибудь совет, где я могу отредактировать это так, чтобы Пассажир искал правильную версию Ruby? Я увидел еще одну страницу в StackOverflow, где говорилось, что он запускает «passenger-install- nginx -module», но это установит для меня совершенно новый пакет Nginx.

Ошибка:

App 23478 output: Required ruby-2.6.1 is not installed.
App 23478 output: To install do: 'rvm install "ruby-2.6.1"
App 23478 output: /bin/sh: 1: exec:
App 23478 output: /home/ubuntu/.rvm/gems/ruby-2.6.1/wrappers/ruby: not found

Ruby версия:

ruby 2.6.5p114 (2019-10-01 revision 67812) [x86_64-linux]

Вывод конфигурации в файл журнала от Passenger:

config" : {
      "api_key" : "<SECRET>",
      "app_env" : "production",
      "app_group_name" : "/prod/application (production)",
      "app_root" : "/prod/application",
      "app_type" : "ruby",
      "base_uri" : "/",
      "environment_variables" : "<SECRET>",
      "generic_app" : false,
      "group" : "ubuntu",
      "group_uuid" : "<SECRET>",
      "load_shell_envvars" : true,
      "log_file" : "",
      "log_level" : 3,
      "spawn_method" : "smart",
      "start_command" : "/home/ubuntu/.rvm/gems/ruby-2.6.1/wrappers/ruby /usr/share/passenger/helper-scripts/rack-preloader.rb",

Версия для пассажира: passenger - версия Phusion Passenger 6.0.2

bash_profile правильно настроил местоположение rvm:

[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"

Запустил встроенную поддержку сборки и все еще получил ту же ошибку:

passenger-config build-native-support
/usr/lib/ruby/vendor_ruby/phusion_passenger/platform_info.rb:363: warning: Insecure world writable dir /home/ubuntu/.rvm/gems in PATH, mode 040777
 [passenger_native_support.so] trying to compile for the current user (ubuntu) and Ruby interpreter...
     (set PASSENGER_COMPILE_NATIVE_SUPPORT_BINARY=0 to disable)
     Compilation successful. The logs are here:
     /tmp/passenger_native_support-el7h2r.log
 [passenger_native_support.so] successfully loaded.

Используемые ссылки:

  1. https://www.phusionpassenger.com/library/indepth/ruby/multiple_rubies.html
  2. Обновлен до Ruby версия 2.1.2, пассажир по-прежнему 1.9.3
  3. Обновлен до Ruby версии 2.1.2, пассажир по-прежнему 1.9.3
  4. Компилировать собственную поддержку пассажиров с RVM для разных Ruby версий
...