【发布时间】:2014-05-21 22:07:41
【问题描述】:
如果我使用捆绑流星应用程序
meteor bundle iron.tar.gz
我可以在没有安装流星的另一台计算机上本地运行应用程序(localhost:3000)吗?如果是这样,我将如何去做?感谢您的帮助!
【问题讨论】:
如果我使用捆绑流星应用程序
meteor bundle iron.tar.gz
我可以在没有安装流星的另一台计算机上本地运行应用程序(localhost:3000)吗?如果是这样,我将如何去做?感谢您的帮助!
【问题讨论】:
流星碎片将捆绑在您的流星包中,但您需要在另一个盒子上安装 Node.js 和 NPM。我使用Forever,以便它保持正常运行并有两个脚本。这个以捆绑包名称作为参数,并根据 Meteor 的 instructions 将捆绑包安装到永远可以使用的目录中:
#!/bin/sh
if [ -d "$1" ]
then
rm -rf $1
fi
mkdir $1
cp ~/$1.tgz ./$1
cd ./$1
tar xvfz $1.tgz
rm -rf bundle/programs/server/node_modules/fibers/
npm install fibers@1.0.1
然后我可以运行下一个脚本,它将项目名称作为输入并针对 MongoDB 副本集永远启动它:
#!/bin/sh
export PORT=3000
export MONGO_URL=mongodb://id:pwd@replica1.yourcompany.com:27017,replica2.yourcompany.com:27017,replica3.yourcompany.com:27017/meteor
forever start $1/bundle/main.js
运行该脚本后,您可以从 localhost 启动它或将 nginx 设置为 HTTP 服务器,它们可以代理它并通过端口 80/443 在您的主机上运行。
【讨论】:
meteor deploy myapp.meteor.com
这就是我最终要做的。我的目标是能够在没有流星但有 mongodb 和 node.js 的计算机上运行我的流星应用程序。这是一个简单的逐步过程。我想在不在线的网络上运行它,并选择默认的 localhost:3000 作为我的地址。
第 1 步: 使用终端(cd 位置)导航到流星项目所在的文件夹。
第 2 步:
在终端:
$ export ROOT_URL='http://localhost:3000'
第 3 步:
在终端:
$ meteor bundle app.tgz
现在有了这个 app.tgz,你可以将它发送到另一台没有安装流星但有 node.js 和 mongodb 的计算机。
第 4 步: 在取景器中: 找到压缩包的应用并解压。
第 5 步:
在新终端中运行 mongodb:
$ mongod
第 6 步:
在终端中导航到解压缩的捆绑应用程序并使用(您必须安装 Node.js):
$ PORT=3000 MONGO_URL=mongodb://localhost:27017/app node main.js
第 7 步:
将浏览器导航到http://localhost:3000,应用程序现在应该正在运行。
【讨论】: