- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何将 meteor 应用程序部署到我自己的服务器?
风格1:开发和部署服务器相同;
风格 2:开发服务器是一个(可能是我的本地主机),部署服务器是另一个(可能是云端的 VPS);
风格3:我想创建一个“meteor Hosting”域名,就像“meteor.com”一样。是否可以?怎么办?
更新:
我正在运行 Ubuntu,并且我不想“demeteorize”该应用程序。谢谢。
最佳答案
"[...] you need to provide Node.js 0.8 and a MongoDB server. You can then run the application by invoking node, specifying the HTTP port for the application to listen on, and the MongoDB endpoint."
因此,在安装 Node.js 的多种方法中,我按照 the best advice I found 启动并运行了它。 ,这基本上是直接在 official Node.JS website 中解压可用的最新版本。 ,已经为 Linux 编译(在我的例子中是 64 位):
# Does NOT need to be root user:
# create directory
mkdir -p ~/.nodes && cd ~/.nodes
# download latest Node.js distribution
curl -O http://nodejs.org/dist/v0.10.13/node-v0.10.13-linux-x64.tar.gz
# unpack it
tar -xzf node-v0.10.13-linux-x64.tar.gz
# discard it
rm node-v0.10.13-linux-x64.tar.gz
# rename unpacked folder
mv node-v0.10.13-linux-x64 0.10.13
# create symlink
ln -s 0.10.13 current
# add path to PATH
export PATH="~/.nodes/current/bin:$PATH"
# check
node --version
npm --version
要安装 MongoDB,我只需按照 the instructions in the MongoDB manual available in the Documentation section of its official website 操作即可。 :
# Needs to be root user (apply "sudo" if not at root shell)
apt-key adv --keyserver keyserver.ubuntu.com --recv 7F0CEB10
echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' | tee /etc/apt/sources.list.d/10gen.list
apt-get update
apt-get install mongodb-10gen
服务器已准备好运行 Meteor 应用程序!对于部署来说,主要的“问题”是“捆绑”操作发生的位置。我们需要从应用程序源文件树内部运行 meteor bundle
命令。例如:
cd ~/leaderboard
meteor bundle leaderboard.tar.gz
如果部署发生在另一台服务器(flavour 2)中,我们需要使用 sftp
、ftp
将 bundle tar.gz 文件上传到它>,或任何其他文件传输方法。文件到达后,我们将遵循 Meteor 文档和 README 文件,该文件神奇地包含在 bundle 树的根中:
# unpack the bundle
tar -xvzf leaderboard.tar.gz
# discard tar.gz file
rm leaderboard.tar.gz
# rebuild native packages
pushd bundle/programs/server/node_modules
rm -r fibers
npm install fibers@1.0.1
popd
# setup environment variables
export MONGO_URL='mongodb://localhost'
export ROOT_URL='http://example.com'
export PORT=3000
# start the server
node main.js
如果部署在同一服务器中(风格 1),则 bundle tar.gz 文件已经存在,我们不需要重新编译 native 包。 (直接跳转上面相应的部分即可。)
酷!通过这些步骤,我已将“Leaderboard”示例部署到我的自定义服务器,而不是“meteor.com”...(仅用于了解和评估他们的服务!)
我仍然必须让它在端口 80 ( I plan to use NginX for this ) 上运行,保留环境变量,启动与终端分离的 Node.JS,等等......我知道这个设置是“几乎赤裸裸”的。 .只是基础,第一步,基本的基石。
该应用程序是“手动”部署的,没有利用所有 meteor deploy
命令魔法功能...我见过人们发布了他们的“meteor.sh ”和“meteoric.sh ”我正在遵循相同的路径...创建一个脚本来模拟“单命令部署”功能...意识到在不久的将来所有这些东西将仅成为先驱 Meteor 探索者的一部分,因为它将成长为一个整个银河系!这些问题中的大多数都将成为过去。
无论如何,我很高兴看到部署的应用程序在the cheapest VPS ever中运行得有多快。 ,在几个不同的浏览器中具有令人惊讶的低延迟和几乎即时同步更新。太棒了!
谢谢!!!
关于deployment - 如何将 meteor 应用程序部署到我自己的服务器上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17606340/
我在尝试在 Meteor.com 上托管的经历非常复杂。 我经常收到“此网站已关闭。稍后再试。”。一开始我不知道为什么,但后来我怀疑问题是我不小心恢复了“system.users”集合造成的。我尝试在
我有点好奇,与复制 Meteor 应用程序、启动 tmux session 并仅运行 meteor 相比,Meteor Up(或其他 Meteor 应用程序部署过程,如 Modulus)是否能做任何花
我与meteor 合作创建了一个应用程序。在 meteor Meteor.methods 和 Meteor.publish 用于执行数据库操作。 I know use of Meteor method
我有一个相当大的 meteor 项目并安装了几个 meteor 包。我这样做只是为了试用一个 meteor 包,看看它是否适用于我的项目。不幸的是,在确定我不需要在我的项目中安装这些包后,我没有卸载这
对于生产为什么我应该“捆绑” meteor 应用程序而不仅仅是复制 服务器上的源使用“ meteor ”命令? 基本上有什么区别: “meteor bundle app.tar.gz”,然后安装正确版
我是 Meteor 的新手,我想知道我们如何要求用户在创建帐户时上传他的图片?我正在使用基本的 Meteor 帐户来创建用户帐户。我希望用户能够上传他的图片,并且还能够在他登录时和在我网站的登录页面上
我正在学习 Meteor Angular 2 教程。在第 6 步,我随机尝试了“ meteor 更新”,这使我的样本崩溃了。更新有效,服务器正在启动。然而,浏览器屏幕现在保持空白,并且在控制台中出现错
在我的 meteor app我需要实现表格排序。现在我正在做的是设置一个 session variable对于每个列并根据要排序的项目切换其值。 任何人都可以提出更好的选择吗? 最佳答案 我推荐 表格
我向用户发送了注册电子邮件,当他输入密码和其他详细信息时,我试图重置密码,但它抛出错误 uncaught error extpected to find a document to change 正如
我运行排行榜示例。然后我更改了 leaderboard.js 中的 names 变量(Meteor.startup 函数参数初始化的一部分)中的科学家条目之一并保存了文件。 我应该期待 meteor
我有一个 meteor 1.0 应用程序。我添加了一堆包,例如:meteor add kevohagan:ramda .但我在任何地方都找不到它。我什至无法在我的系统上找到它。 在我的项目中: $>
我有一个 meteor 移动应用程序在结构上工作;我真的需要将 View 与一些页面转换拼接在一起。 我看了iron-transitioner项目,但看起来开发已经停止? (最后一次提交 6 个月前,
我在“发现 meteor ”一书之后构建了我的第一个 meteor 添加。 但是我现在遇到了以下错误: 错误:在ian:accounts-ui-bootstrap-3 中没有找到accounts_ui
是否可以在负载均衡器后面使用 Mongodb 运行 meteor 应用程序的多个实例? 似乎如果一个应用程序的多个实例在不同的服务器上运行,那么它们就不会知道其他实例对 Mongo DB 所做的更改
我在/client/main.coffee 中的新客户端代码 Xingyun = Meteor.connect "localhost:3000" System = new Meteor.Collect
在 Meteor.publish ,使用 this.error 有什么区别并简单地抛出 Meteor.Error ? 最佳答案 this.error仅在发布方法内可用。每 the docs : Sto
假设我想在 Meteor 的后端使用与 Mongo 不同的数据库,并且还想在前端使用像 D3.js 这样的可视化库。 目前有可能吗? 如果不是我自己添加它会有多复杂? 谢谢 最佳答案 https://
我已经在 Meteor 中制作了一个 watch-as-I-type 实时聊天服务,但是我在 Meteor 中的内置元素保存功能方面遇到了麻烦。基本上,当输入的文本具有焦点时,我需要不更新当前的聊天消
我想知道 Meteor 是否可以与我的用例一起使用。 我有一个可在 App Store 上使用的移动应用程序。这个应用程序包含一个小调查,用户将在没有互联网连接的情况下做出回应。然后用户将关闭应用程序
关闭。这个问题是off-topic .它目前不接受答案。 想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。 8年前关闭。 Improve this q
我是一名优秀的程序员,十分优秀!