Я практиковался в настройке производственной среды с помощью puppet, и теперь я настраиваю все для обработки HTTP-запросов с помощью Apache.
Поскольку Puppet работает на Ruby, мне также нужен Passenger, чтобы запустить его, но я не могу его установить, потому что постоянно получаю сообщение об ошибке, что мне нужна более свежая версия Ruby. Сначала это была актуальная проблема, потому что я использую базовую версию CentOS 6.5, которая поставляется только с Ruby 1.8.
Затем я обновил репозиторий yum, саму систему и сделал wget
, чтобы загрузить текущую версию, настроенную и установленную, что привело меня туда, где я сейчас нахожусь. Я установил Gems и снова попытался получить Passenger, но столкнулся с той же стеной, проблемами с версией.
Здесь вы можете увидеть установленную версию ruby и проблему.
[vagrant@puppetmaster ~]$ sudo gem install rack passenger
ERROR: Error installing rack:
rack requires Ruby version >= 2.2.2.
ERROR: Error installing passenger:
rake requires Ruby version >= 1.9.3.
[vagrant@puppetmaster ~]$ ruby --version
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-linux]
Итак, после пары часов поиска и множества неудачных решений в Google я наконец нашел то, что действительно работало. Следующие команды действительно решили это.
sudo gem install rack -v 1.6.0
sudo gem install rake -v 10.4.2
sudo gem install passenger -v 4.0.56
Очевидно, это то, что все остальные говорили о проблемах с исходным кодом, просто их решения не работали в моем случае.