Я хотел бы разместить приложение nodeJS/mongoose/mongodb в облаке, и поскольку EC2 имеет MicroInstance, который бесплатно в течение 1 года, мой вопрос: Есть ли пошаговые руководства, как я могу встать и запустить приложение nodejs/mongoose в Amazon EC2?
Хостинг nodeJS/mongoose веб-приложение на Amazon EC2
Ответ 1
Я использовал пару руководств, которые действительно помогли мне приложить приложение Node.js на Amazon EC2.
Первый из них поможет вам создать экземпляр и установить Node.js в этом экземпляре
Как настроить Node.js на Amazon EC2 - Полное руководство
А затем еще один, который также может быть вам полезен, у него есть более подробная информация о том, как сделать приложение Node.js доступным на порт 80, настроив iptables на пересылку его на порт 8080
Как я получил Node.js на Amazon EC2
Для MongoDB есть официальное руководство по размещению на Amazon EC2 на официальном сайте
Если вы просто прототипируете приложение, вы можете также использовать свободный уровень (500 МБ) на MongoLab для создания экземпляра MongoDB без каких-либо усилий, который также сохранит некоторые ресурсы на вашем экземпляре EC2, запуском приложения Node.js.
Ответ 2
Я рекомендую использовать Amazon AMI
создание выскочки script для вашего js-приложения
следующий файл может войти в /etc/init
nodeapp.conf
description "node app"
start on runlevel [23]
stop on runlevel [016]
console owner
exec /bin/bash -l -c 'cd /path/to/app; /usr/bin/node server.js -p 9001'
respawn
отсюда вы хотите использовать nginx или apache для прокси-сервера для вашего приложения node
nginx можно установить через yum install nginx
для nginx следующий блок будет работать в вашем блоке http {} config
upstream app_cluster_1 {
server 127.0.0.1:9001;
}
server {
listen 80;
server_name domain.com;
location / {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://app_cluster_1/;
proxy_redirect off;
}
}
вы можете запустить свое приложение и nginx
start nodeapp
и
service nginx start/restart
если вы размещаете mongo-db локально, обязательно запустите его. Я считаю, что он поставляется с init.d script
service mongod start
для автоматического запуска nginx и mongo
chkconfig nginx on
chkconfig mongod on
Если mongo недоступно в виде пакета, выполните действия, описанные в
http://docs.mongodb.org/manual/tutorial/install-mongodb-on-redhat-centos-or-fedora-linux/