Назад | Перейти на главную страницу

Предпочтительный способ установки Ruby / Rake для всех пользователей

У нас есть несколько разных серверов для работы с нашим флагманским продуктом. У нас есть сервер разработки, демонстрационный / промежуточный сервер и рабочий сервер. Все они работают на каком-то варианте Debian или Ubuntu.

Чтобы управлять созданием новых клиентов, сжимайте резервные копии, перечисляйте статистические данные и многое другое; Я создал новый репозиторий Git (размещен на GitHub), который содержит набор задач Rake. Затем я использовал rvm установить Ruby и упаковщик для установки необходимых драгоценных камней, и я использую rvmsudo rake my_task для выполнения поставленных задач.

Это сработало очень хорошо, пока к проекту не присоединился новый разработчик. Ему нужно загрузить rvm, установить ruby ​​и установить все необходимые драгоценные камни, чтобы заставить его работать, и ему было сложно понять, использовать ли sudo или rvmsudo потому что он настраивается немного по-разному на каждой машине.

Итак, я хочу начать все сначала и переустановить все на каждом сервере. В идеале я хочу, чтобы мои разработчики клонировали репозиторий Git в свой домашний каталог (на случай, если они сами изменяют задачи rake) и выполняли задачи rake с помощью sudo ИЛИ rvmsudo. Я хочу стандартизировать его, чтобы им не приходилось угадывать, какой именно.

Я помню, что у меня были проблемы с установкой последних версий Ruby, Rails и Rake со стандартным apt-get менеджер пакетов, поэтому я перешел на использование rvm, но похоже, что это был плохой выбор.

Итак, знает ли кто-нибудь отличное руководство или есть какие-либо указатели по настройке Ruby / Rails / Rake на сервере, чтобы все разработчики с доступом sudo могли выполнять команды и не беспокоиться об установке чего-либо?

Спасибо!

Похоже, вы делаете первый большой шаг в стандартизации своей среды. Поздравления - Вас ждет краткий период агонии, за которым следует сисадмин Nirvana.
Серьезно, потратьте месяц, создайте то, что вы хотите, чтобы ваши системы выглядели в обозримом будущем, и начните работать над планом развертывания этого повсюду, используя какой-то инструмент развертывания (кукольный или повар являются наиболее распространенными в наши дни).


Инструменты развертывания и стандартизация решают вашу основную проблему: все будет работать одинаково на каждой машине.

Что касается загрузки программного обеспечения на шаблонную машину и выбора того, как все будет работать, я предлагаю систему на основе Debian устанавливать все, используя apt если вы можете, но если вы используете инструменты развертывания, это не так критично: ваши системы будут развертываться, исправляться и поддерживаться инструментами, поэтому вам не следует КОГДА-ЛИБО делать разовые патчи на живом сервере. (Да, это иногда случается, но помните, что ваши инструменты развертывания будут давить на эти изменения, поэтому убедитесь, что вы сделали их право путь в какой-то момент.)

Обязательно дайте вашим разработчикам возможность поиграть с новой средой (ОЧЕНЬ приятно иметь лабораторию VMWare), прежде чем развертывать ее ...