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

Развертывание Meteor в Windows

Я нахожу довольно странным, что нет подробных пошаговых объяснений о том, как развернуть свой собственный веб-сайт Meteor на свой собственный сервер Windows. Или, может быть, я просто не могу использовать Google, чтобы найти такое объяснение.

На многих страницах, даже по некоторым вопросам здесь, в SO, я обнаружил, что люди просто говорят "build it and deploy it like any other node.js app", что здорово, но я не могу найти никакого объяснения того, как развернуть node.js webapp on to сервер Windows.

Метеор настолько потрясающий, что я чувствую, что если кто-нибудь напишет такой шаг за шагом о том, как развернуть приложение Meteor на сервере Windows, looooot людей будет очень счастлив, если вы остановитесь... Особенно, если в объяснении описано, как развернуть несколько приложений Meteor на одном сервере Windows;)

Конечно, не обязательно IIS, nginx работает в Windows.

Кроме того, Node.js работает в Windows отлично. MongoDB работает в Windows отлично, как сервис. Meteor создает приложения на Windows, видимо, просто отлично. Таким образом, на самом деле отсутствует только один последний шаг, чтобы развернуть его на сервере Windows...

Итак, кто-нибудь знает, как развернуть несколько приложений Meteor на одном сервере Windows и готов написать объяснение для этого пошаговое объяснение?

Довольно пожалуйста?

4b9b3361

Ответ 1

Predrag - я начал писать то, что, надеюсь, будет довольно разумным пошаговым руководством на Meteor Forums здесь: Развертывание Windows.

Надеюсь, в течение следующих нескольких дней я закончу его, но это начало!

Между тем вот основные шаги для тех, кто не нуждается в пошаговом руководстве:

  • На некоторых машинах Windows (безусловно, может быть ваша машина разработки, если вы работаете в Windows), убедитесь, что у вас установлено следующее:

    • Метеор
    • VS12 (возможно, VS15 может работать, но я использую VS12) с установленными инструментами построения командной строки С++!
    • Node (если вы сложны, может быть тот же node, как встроен в Meteor), иначе любой node должен работать
    • npm
    • demeteorizer (npm install -g demeteoizer)
  • Затем из вашего проекта Meteor выполните следующее:

    demeteorizer -o c:\somepath
    cd c:\somepath\bundle\programs\server
    npm install
    

Это критическая часть. Последняя команда попытается построить Fibers.. поэтому убедитесь, что инструменты командной строки VS могут быть найдены и работают.

Если это работает, вы почти дома!

Running Для запуска приложения - он очень похож на любое другое приложение node, за исключением того, что нам нужно определить (как минимум) две переменные среды (первые два ниже). Я делаю это через файл .bat, но любой эквивалент должен работать. Переменные ENV определены в файле README в каталоге пакета выше BTW, если вы хотите прочитать о них.

set MONGO_URL=mongodb://localhost:27017/mydbname
set ROOT_URL=http://myapp.example.com:8080
set PORT=8080
set MAIL_URL=smtp://user:[email protected]:port
node main.js

Теперь вышесказанное предполагает множество упрощенных вещей, а именно, что вы используете свой MongoDB на локальной машине без защиты пользователя в порту по умолчанию. Если нет, вам нужно будет изменить часть MONGO_URL, чтобы отразить реальность. "Mydbname" - это любое логическое имя, которое вы хотите назвать своей коллекцией документов. В режиме разработки это был "метеор", но маловероятно, что он имеет смысл в производстве (особенно если он против реальной производственной БД!). Это также подразумевает NO Oplog Tailing.

Мне нравится указывать PORT явно в файле .bat, чтобы он очищался и, конечно же, нужно было делать, если вы не хотите использовать 3000 (или 80 - независимо от того, что по умолчанию, что я не помню).

Вам также может потребоваться установить MAIL_URL, если вы используете какие-либо пакеты пользователей, которые отправляют уведомление по электронной почте, и т.д. Я поставил его выше, но он необязательный.

В любом случае, это основы. Для получения дополнительной информации, пожалуйста, прочитайте руководство, приведенное выше (это незавершенное производство).

Ответ 2

Ну, их страница о настраиваемом развертывании довольно короткая, и я обнаружил некоторые факты при управлении развертыванием приложения Welcome to Meteor:

  • требуется переменная окружения ROOT_URL, но кажется, что номер порта внутри не имеет смысла.
  • номер порта определяется переменной окружения PORT или назначается node. Эта переменная PORT не упоминается в руководстве. Я использовал команду netstat, чтобы узнать используемый порт.
  • переменная среды MONGO_URL является необязательной в этом приложении.
  • должен выполнить npm install перед выполнением meteor build

Надеюсь на эту помощь.