2013-09-28 2 views
1

Здесь уже есть несколько вопросов, связанных с этим вопросом.Разверните метеор на официальные каналы метеоритных серверов

Я хочу развернуть приложение meteorjs на официальных метеоритных серверах. Мое приложение использует волокна, а так как волокна скомпилированы для моей системы (Mac OSX), это создает ошибку на серверах ubuntu метеор.

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

Некоторые из соответствующих должностей таковы:

Reinstalling node-fibers for a Meteor app on Modulus.io?

Problems with Meteor deployment related to fibers module

Я хотел бы использовать:

meteor deploy myapp.meteor.com 

EDIT:

Мой вопрос выше был не совсем к сожалению, я e Будущее, которое является частью волокон. Когда я развертываю его в метеор и получаю доступ к журналам сервера, я получаю эти ПРЕДУПРЕЖДЕНИЯ, и сбой приложений сразу после.

ПРЕДУПРЕЖДЕНИЕ /meteor/dev_bundles/0.3.13/lib/node_modules/fibers/future.js:173

ПРЕДУПРЕЖДЕНИЕ Ошибка: Не удается найти модуль 'волокна/Future'

В моем коде у меня есть line:

Future = Npm.require("fibers/future"); 

Возможно ли это при размещении метеоров XXX.meteor.com?

EDIT второй: Вместо использования:

Future = Npm.require("fibers/future"); 

Я также попытался:

var path = Npm.require('path'); 
var fs = Npm.require('fs'); 
var base = path.resolve('.'); 
var isBundle = fs.existsSync(base + '/bundle'); 
var modulePath = base + (isBundle ? '/bundle/static' : '/public') + '/node_modules'; 
Future = Npm.require(modulePath + '/fibers/future'); 

Как было предложено в этом посте:

How can I deploy node modules in a Meteor app on meteor.com?

И установлены волокна:

.meteor/местные/сборки/программы/сервер/государственные/node_modules/

Но с этим я получаю либо это при запуске метеор без Судо ошибок: EACCES, разрешение отказано «XXXX/.meteor/местные/сборки ' на Object.fs.renameSync (fs.js: 439: 18)

Или эта ошибка, при его запуске с Судом: ошибка: не удается найти модуль' XXXX/.meteor/местные/сборки/программы/сервер/public/node_modules/fiber/future '

Обычно я запускаю метеор без sudo ofc!

ответ

1

Моя проблема заключалась в том, что я включил пакет npm для загрузки другой фреймворка, который разбил новый Npm метеор.

0

Вам нужно просто удалить волокна и установите его на своем сервере, как указано в документации:

cd bundle/programs/server/node_modules 
rm -r fibers 
npm install [email protected] 

Где каталог расслоения является untarred версии комплектного приложения, созданного с помощью meteor bundle xxx.tar.gz на вашем Ubuntu Server

+0

Не применимо для моего вопроса, так как у меня никогда не было папки с пакетом, когда я непосредственно развертываю на метеоритные серверы. Thx для вашего времени, хотя! –

+0

О, я вижу, я знаю, что знаю, что ты пытаешься сделать. Я думал, что волокна/будущие «просто работают» на развертывании метеорного развертывания без необходимости использования двоичных файлов. Рассматривали ли вы 'wrapAsync', который бы соответствовал бы большей части официального изложения, когда он был завершен? См. Https://www.eventedmind.com/posts/meteor-meteor-wrapasync – Akshat

0

из meteor documentation ясно, что вы можете развернуть на meteor.com с помощью развертывания «aneteor» или на свой собственный сервер, создав пучок с пакетом из атероидов ».

Это только когда вы создаете свой комплект, который вам нужно установить'fibers '. Если вы используете размножение «тэтеорта», нет необходимости.

часть, где вы должны удалить и переустановить пакет волокон только требуется, если вы хотите развернуть как этот

  • создать пакет на компьютере разработчика
  • скопировать файл bundle.tgz на ваш сервер, который запускает другую ОС
  • распаковать файл bundle.tgz и запустить приложение

при создании сверток, вы должны установить волокна в любом случае. Если вы делаете все это на сервере следующие шаги:

  • метеор пучок --release 0.6.5.1 /my/output.tgz
  • деготь -xvzf /my/output.tgz
  • мв Bundle ваш имя -app
  • CD-приложение-имя вашего программы// сервер
  • НАЯ установка волокон
  • forever начать свое-приложение-имя/main.js

эти шаги предполагают, что вы используете пакет узлов forever

+0

Спасибо за ответ! К сожалению, при развертывании метеоров я получаю сообщение об ошибке, которое, как я думал, было той же проблемой, что и в других связанных вопросах –

+0

в старших сообщениях, они используют старые версии метеоров. изменили ли вы путь к yourapp/programs/server перед запуском npm install fiber? –

+0

Я не уверен, на какую «старшую должность» вы ссылаетесь, но я добавил второе изменение к моему вопросу относительно того, о чем вы, возможно, говорили. –

Смежные вопросы