Какие методы развертывания Rails лучше всего преодолевают экологические различия? - PullRequest
2 голосов
/ 15 сентября 2009

Я работаю над Ubuntu, разрабатывая приложение Rails для своей церкви. Мы также используем VPS на Ubuntu. Я использую Capistrano для развертывания периодических обновлений. Однако неизбежно у приложения, работающего на моем локальном компьютере, всегда возникают проблемы после развертывания на хосте, скорее всего из-за различий в окружении.

Какие приемы / методы упрощают развертывание, чтобы то, что тестируется и работает локально, с такой же вероятностью работало на хосте. (Я уже принял подход «все подрядчик».)

Моя первая мысль - разработать / работать в локальном образе VPS, который сам в конечном итоге будет развернут (своего рода виртуальное устройство). Кто-нибудь делает это?

Что делают другие, чтобы минимизировать проблемы, возникающие в результате экологических различий? Какие хосты предоставляют лучшие варианты развертывания?

Ответы [ 4 ]

1 голос
/ 15 сентября 2009

Попробуйте настроить сценическое окружение, которое максимально имитирует ваш рабочий. Фактически, я использую некоторые из своих серверов, создавая субдомен (staged.mydomain.com) для проверки правильности версий драгоценных камней и т. Д.

Я также использую пользователя READ-ONLY для тестирования реальных и реальных данных на этом этапе установки.

Такой подход помогает нам быть уверенными, что новое развертывание будет работать просто отлично, решая проблемы заранее.

Было бы неплохо узнать, с какими проблемами вы часто сталкиваетесь, чтобы попытаться найти способ уменьшить их внешний вид.

0 голосов
/ 15 сентября 2009

Имейте в виду, что большинство разработчиков Rails используют OS X и развертывают на сервере UNIX, и у нас никогда не возникает никаких проблем из-за этого.

Версии raby, rails, mysql и т. Д., Конечно, должны быть одинаковыми.

0 голосов
/ 15 сентября 2009

Ну, вы на самом деле ответили на свой вопрос.

Если вы не можете выполнить развертывание в промежуточной среде на рабочей коробке, вам следует попытаться отразить это точно на своем компьютере. Затем вы можете проверить его с помощью таких программ, как VMWare и т. Д.

По моему опыту, это необходимо только в действительно критических ситуациях. Если ваши Ruby / Rails (версии гемов, которые вы можете указать в своей среде) одинаковы, у вас не должно возникнуть никаких проблем при развертывании приложения Rails.

Действительно, было бы неплохо узнать, с какими проблемами вы сталкиваетесь, поэтому мы надеемся предоставить вам более адекватное решение.

0 голосов
/ 15 сентября 2009

Насколько это возможно, убедитесь, что вы используете точно такую ​​же версию Ruby, точно такую ​​же версию Rails, точно такую ​​же настройку базы данных и точно такую ​​же все остальное. Чем больше различий между настройками в режиме реального времени и настройками разработки, тем больше проблем, с которыми вы можете столкнуться.

...