Я пытаюсь настроить приложение Sinatra на своем веб-хосте. У меня нет прав sudo для установки гемов по общесистемному пути, который находится в нескольких подпапках ниже /usr/local
, но у меня есть папка gems
в каталоге моего приложения.
Фон
Эта ссылка дает следующие определения:
GEM_HOME
- «Каталог, содержащий главный репозиторий gem.»
GEM_PATH
- «Список путей каталогов, содержащих репозитории gem, для поиска в дополнение к каталогу GEM_HOME. Список должен быть разделен соответствующим разделителем пути (например,«: »в Unix и«; »в Windows)»
Начальные настройки при входе в систему
Когда я впервые захожу по ssh на этот веб-хост, echo $GEM_HOME
и echo $GEM_PATH
оба выдают пустую строку, но gem list
показывает несколько драгоценных камней.
Попытка изменить местоположение драгоценного камня
Из командной строки я установил GEM_HOME
так:
GEM_HOME=$PWD/gems # 'gems' folder under present working directory
echo $GEM_HOME # correctly outputs the gem folder I specified
ls $GEM_HOME # shows gems folder contents, namely:
# bin/ cache/ docs/ gems/ specifications/
Я также установил GEM_PATH
в той же папке.
После этого gem list
по-прежнему отображает глобальные драгоценные камни, а не драгоценные камни в указанной папке, и gem install
все еще пытается установить в глобальное местоположение.
Чего мне не хватает?