Как включить непрерывное развертывание приложений Node.js в Amazon EC2? - PullRequest
8 голосов
/ 20 марта 2012

Я разработчик node.js.Я использовал платформу Heroku и Joyent no.de раньше.

Для обеих этих платформ развертывание было простым

git push heroku master ( Heroku )

git push joyent master ( Joyent's node)

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

Теперь я планирую использовать Amazon AWS, так как он более настраиваемый для моих нужд.Как настроить аналогичную вещь в Amazon EC2 для непрерывного развертывания?

Я использую Ubuntu AMI.

Есть ли какой-нибудь инструмент, который поможет мне добиться этого?Если есть какие-либо ресурсы / учебники, которые могут мне помочь - пожалуйста, дайте мне знать.

Спасибо!

Ответы [ 3 ]

9 голосов
/ 20 марта 2012

Этот механизм автоматического развертывания реализован с помощью Git Hooks . Наиболее вероятный используемый крючок - post-update.

Это простой bash-скрипт, который выполняется на git push; поместите его в репозиторий git на своем сервере EC2, включая код для повторного запуска NPM (при необходимости) и перезапустите код.

Это должно сделать это. :)

4 голосов
/ 20 марта 2012

Использование roco - решение для развертывания, созданное на основе capistrano, прекрасно работает с express / railwayjs + git + upstart. Если у вас есть другой env, не стесняйтесь настраивать его, используя Roco.coffee

Он также может быть просто настроен с помощью post-update крюка, чтобы работать точно так же, как в героку и радости.

Вот небольшой учебник для этого инструмента: http://node -js.ru / 4-deploy-with-roco

2 голосов
/ 25 марта 2013

Извлечение AWS Elastic Beanstalk

Позволяет развернуть ваше приложение в экземпляре amazon ec2, запустив:

git aws.push --environment testing
// or
git aws.push --environment production

Страница документации содержит много качественной информации для начала!

...