Подтвердить что ты не робот

Хостинг nodejs приложение в EC2

Мне интересно размещать приложения nodejs в облаке, и я ищу бесплатный облачный хостинг для своей цели. Я обнаружил, что у Amazon есть один вопрос, но у меня есть следующий вопрос: есть ли какие-либо учебники по тому, как я могу настроить и запустить приложение nodejs в Amazon EC2?

EDIT: Можете ли вы предоставить какие-либо хорошие хостинги для nodejs (кроме героку)?

4b9b3361

Ответ 1

Я использовал Node.js с Amazon EC2 некоторое время и был доволен обоими из них. На данный момент AWS кажется самым дешевым и самым надежным провайдером облачных вычислений, поэтому сбор Amazon не будет ошибкой. Там нет ничего особенного в запуске Node.js в облаке - вы работаете с ним, как если бы это был ваш собственный компьютер. Ниже приведены некоторые общие шаги для простейшего приложения Node.js, запущенного на сервере EC2 Ubuntu:

  • Создайте учетную запись Amazon EC2.

  • С консоли AWS запустите экземпляр t1.micro с любым AMI Ubuntu ().

  • Войдите через SSH в свой экземпляр.

  • Установите Node.js: sudo apt-get install nodejs

  • Создайте новый файл test_server.js со следующим содержимым:

    require("http").createServer(function(request, response){
      response.writeHeader(200, {"Content-Type": "text/plain"});  
      response.write("Hello World!");  
      response.end();
    }).listen(8080);
    
  • Запустите сервер: node test_server.js

  • Проверьте работу с другой консоли: curl http://localhost:8080

Ответ 3

Сообщение в блоге о том, как развернуть приложения на EC2 Node: http://devblog.daniel.gs/2014/01/deploying-node-apps-on-aws-ec2-with.html

Объяснение:

  • Развертывание приложений Node из вашего репозитория github (private + public)
  • Автоматизация процесса развертывания с использованием сценариев
  • Обратный прокси-сервер с использованием Nginx
  • и используя утилиту Forever.

Надеюсь, что это поможет.

Ответ 4

На основе этого учебника здесь обновляется шаг за шагом:

1) Сделайте учетную запись на Amazon Web Services.

2) Создайте экземпляр EC2; Я выбрал микросхему Ubuntu.

3) Настройте группу безопасности (назовите ее "Node" ) и добавьте порты:

HTTP (80), HTTPS (443) и пользовательский TCP-порт для вашего приложения Node (например, 3000)

4) Запустите экземпляр и сохраните файл pem (закрытый ключ), например. "node.pem".

5) В Windows - установите Cygwin + пакет OpenSSH. также рекомендуется установить WinScp, чтобы иметь доступ к проводнику как "доступ к Linux".

6) Откройте терминал Cygwin в качестве администратора и установите правильные разрешения для файла node.pem:

chown :Users node.pem
chmod 400 node.pem

7) Найдите свое общедоступное DNS-имя экземпляра EC2 в dasboard EC2 и подключитесь к нему с помощью SSH:

ssh -i node.pem [email protected]{your EC2 public DNS name}

8) Обновите Ubuntu и установите NodeJS:

sudo apt-get update
curl -sL https://deb.nodesource.com/setup_7.x | sudo -E bash -
sudo apt-get install -y nodejs
sudo apt-get install -y build-essential

9) Скопируйте приложение NodeJS в экземпляр EC2 (через Cygwin или Winscp).

10) Установите все необходимые модули Node для приложения:

cd /home/ubuntu/My_Node_App
npm install --save

11) Переустановите порты с помощью IPtables, чтобы к вашему приложению можно было обращаться по умолчанию http-порт 80:

sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 3000

Чтобы просмотреть записи маршрутизации iptables, запустите:

sudo iptables -t nat -L

Если вам нужно удалить запись маршрутизации (первая строка), запустите:

sudo iptables -t nat -D PREROUTING 1

12) Запустите приложение как фоновый процесс:

sudo nohup node app.js &

Чтобы убить процесс вашего приложения:

ps -ef | grep app.js
sudo kill {proccess id number}

Ответ 5

Есть довольно некоторые решения для хостинга Node.js, вот несколько из них:

Joyent

Joyent является корпоративным спонсором и владельцем товарного знака Node.js и предоставляет привлекательную альтернативу Amazon EC2 для многих вещей, не в последнюю очередь Node.js хостинг, конечно, см. Joyent Node.js. (пожалуйста, ознакомьтесь с Node.js ™ Development SmartMachine Terms of Service, хотя).

По-видимому, они просто реструктурируют эту разработку, хотя:

За прошедший год Joyent Cloud предоставила бесплатную разработку песочница для пользователей Node.js. Со временем сообщество сделало это ясно, что им нужны больше инструментов и больше возможностей. С этой целью мы рады объявить о партнерстве с Nodejitsu, чтобы обеспечить как это в среде разработки Node.js мирового класса с Средства разработки и управления Nodejitsu, работающие на Joyent Cloud Инфраструктура как услуга. Новая услуга будет запускаться очень в ближайшее время.

Соответственно, еще не совсем ясно, как будут оцениваться варианты ценообразования для производственного хостинга решения Node.js, но с учетом Joyent compet ценообразование, я бы ожидал, что по крайней мере аналогичный вариант.

Облачный литейный завод

Cloud Foundry Открытая платформа как сервисная поддержка проекта Node.js также среди многих других фреймворков (что делает платформу такой захватывающий). В последнее время платформа становится довольно привлекательной и в то же время используется несколькими решениями "Платформа как сервис" (PaaS) в качестве их бэкэнд соответственно - среди них (в каком-либо конкретном порядке и не обязательно завершены):

  • AppFog - Простая PaaS для Java, Node,.Net, Ruby, PHP, MySQL, Mongo, PostgreSQL и многое другое... Свобода передвигаться между IaaS по желанию с самой простой ценой в облаке.
  • Cloud Foundry (VMware) (корпоративный спонсор Cloud Foundry) - развертывание и масштабирование приложений за считанные секунды без блокировки себя в одном облаке.
  • Iron Foundry - Iron Foundry - проект с открытым исходным кодом, который расширяет Cloud Found ™ ™ до экосистемы .NET, предоставляя услуги, инсталляторы и разработчики инструменты.

Большинство из них находятся в стадии бета-тестирования, и цены еще не установлены, но, учитывая конкуренцию, я ожидаю от вас довольно интересных вариантов со временем.

Ответ 6

Самый простой способ запустить node.js бесплатно на EC2 - это ИМХО на Heroku.

Ответ 7

ознакомьтесь с полным учебником здесь. В этом учебном руководстве показано, как установить Node.js на EC2, настроить HTTP-порты и nginx для перенаправления портов, а также использовать супервизор для запуска Node.js навсегда, поскольку он обычно останавливается при закрытии сеанса консоли SSH.

Ответ 8

Я только что прошел учебник по регистрации и приложению Heroku. Не могло быть проще. Какой восхитительный опыт...

... вплоть до того момента, когда вы не можете иметь экземпляр MongoDB как бесплатную передачу. Минимальная стоимость (кроме бесплатного пробного месяца) составляет 18 долларов США в месяц на каждый ГБ хранилища.

Честно говоря, лучшим выбором является Openshift. Он получил три бесплатных передачи, которых достаточно для многих новичков, таких как то, что я делаю. И Heroku, и Openshift находятся в пространстве Amazon, но интерфейс их клиентов отличается. Я думал, что Heroku легче начинающим начинать, но, как я уже упоминал, нет бесплатного обеда на стороне базы данных.