Как использовать Ruby и PIK вместе с Windows Services?

У меня есть сервер Windows, на котором запущено несколько приложений Ruby, для некоторых из которых требуются разные версии Ruby. Для управления версиями Ruby мы используем менеджер версий Ruby "PIK".

Для приложения мы используем Windows Services + SrvAny + Thin для его запуска. Скриншот конфигурации:

введите описание изображения здесь

Однако я не могу найти никакой документации о том, как изменить версию Ruby для этой конкретной службы Windows. Прямо сейчас он просто выбирает один из переменных PATH env.

Есть ли способ изменить версию ruby, используя pik с системными службами Windows?

2 ответа

Я уверен, что есть много способов сделать то, что вы хотите, но тот, который приходит на ум, редактирует bundle.bat который предположительно используется для запуска вашего сервиса и добавления где-то в верхней части файла pik Команда, чтобы указать версию, которую вы хотите использовать.

Например:

pik use 186 mingw

Это переключится на указанную версию (вы можете использовать pik list чтобы увидеть версии ruby, доступные для вашей системы) и выполнить службу с этой версией.

Смотрите также pik руководство по использованию для получения дополнительной информации.

Вы можете использовать с pik команду follow (пример использования службы Windows):

pik 193 & rails server

контекст:

при запуске служб используется установленный по умолчанию ruby, например, запустите bar.rb, затем bar.rb запустите другой сервер ruby, такой как rails-сервер или тонкий сервер, но если вы запустите его с помощью команды dos, чтобы открыть новый экземпляр, то Вы можете использовать эту 2 команду: PIK и желаемую команду

Другие вопросы по тегам