将流星部署到官方流星服务器光纤
Deploy meteor to official meteor servers fibers
这里已经有几个与这个问题相关的问题。
我想将一个 meteorjs 应用程序部署到官方 meteor 服务器。我的应用程序使用光纤,并且由于光纤是为我的系统(Mac OSX(编译的,因此它会在Meteor的ubuntu服务器上创建错误。
其他问题/答案与将应用程序部署到官方流星服务器以外的其他地方有关,或者它们似乎留下了一步,因为它们对我不起作用。
一些相关的帖子是这些:
在 Modulus.io 上重新安装 Meteor 应用程序的节点光纤?
与光纤模块相关的流星部署问题
我想使用:
meteor deploy myapp.meteor.com
编辑:
不幸的是,我上面的问题并不完整,我使用Future,这是纤维的一部分。当我将其部署到流星并访问服务器日志时,我收到这些警告,应用程序立即崩溃。
警告/流星/dev_bundles/0.3.13/lib/node_modules/光纤/未来.js:173
警告错误:找不到模块"光纤/未来">
在我的代码中,我有这样一行:
Future = Npm.require("fibers/future");
这在流星部署 XXX.meteor.com 上是不可能的吗?
编辑第二:而不是使用:
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');
正如这篇文章所建议的:
如何在 meteor.com 上的 Meteor 应用程序中部署节点模块?
并安装了光纤以:
.meteor/local/build/programs/server/public/node_modules/
但是有了这个,我在没有 sudo 的情况下运行流星时会得到这个错误:EACCES,权限被拒绝"XXXX/.meteor/local/build" at Object.fs.renameSync (fs.js:439:18(
或者这个错误,当使用 sudo 运行时:错误:找不到模块"XXXX/.meteor/local/build/programs/server/public/node_modules/fibers/future">
通常我运行流星没有 sudo ofc!
我的问题是我确实包含了用于加载另一个框架的 npm 包,这破坏了流星的新 Npm。
您只需卸载光纤并将其重新安装到您的服务器上,如文档中所述:
cd bundle/programs/server/node_modules
rm -r fibers
npm install fibers@1.0.1
其中捆绑目录是您在 ubuntu 服务器上通过 meteor bundle xxx.tar.gz
创建的捆绑应用程序的未压缩版本
从 meteor 文档中可以清楚地看出,您可以使用"meteor deploy"部署到 meteor.com,也可以通过使用"meteor bundle"创建捆绑包来部署到您自己的服务器。
只有在创建捆绑包时,才需要安装"光纤"。如果您使用"流星部署",则没有必要。
仅当您要像这样部署时,才需要删除并重新安装光纤包的部分
- 在开发计算机上创建捆绑包
- 将 bundle.tgz 文件复制到运行不同操作系统的服务器
- 解压缩 bundle.tgz 文件并运行应用程序
创建捆绑包时,无论如何都必须安装光纤。如果在服务器上执行所有操作,则步骤如下:
- 流星捆绑包 --发布 0.6.5.1/my/output.tgz
- tar -xvzf/my/output.tgz
- MV 捆绑您的应用名称
- CD 您的应用程序名称/程序/服务器
- npm 安装光纤
- 永远启动您的应用程序名称/主.js
这些步骤假定您永远使用 Node 包
- 流星和铁路由器中的gzip和minimy服务器路由响应
- 流星消息格式服务器端翻译
- 流星安卓应用赢得't连接到服务器
- 流星js如何从服务器向磁盘写入文件
- 从流星服务器到客户端获取单个值
- 当通过cordova部署时,服务器端流星代码在哪里运行
- 流星 在客户端跟踪服务器端变量
- SMTP 服务器给出错误.邮件未在流星应用程序中发送
- 流星火焰模板如何处理服务器发送的事件
- 流星:“检测”服务器上的当前客户端模板
- 流星如何从服务器获取到客户端的变量值
- 将流星部署到官方流星服务器光纤
- 如何在流星服务器端测试中加载json文件
- 流星服务器无需登录即可插入数据
- 流星服务器端渲染在应用程序
- 流星服务器端方法调用
- 流星服务器异步方法调用和使用返回结果
- 流星服务器实例化
- 无法调用流星服务器端函数的回调函数
- 流星服务器方法在回调中返回undefined