【问题标题】:Meteor: Deploying to Amazon EC2Meteor:部署到 Amazon EC2
【发布时间】:2014-03-06 12:36:52
【问题描述】:

我正在阅读有关Deploying to EC2 的信息。最后一步看起来像这样,我将 bundle 文件夹放在我的流星项目之外

PORT=80 MONGO_URL=mongodb://localhost:27017/sidebar
ROOT_URL=http://ec2-23-20-113-59.compute-1.amazonaws.com/
sudo node ../bundle/main.js

我将 ROOT_URL 替换为我的 AWS 控制台中显示的公共 DNS。我不太清楚 MONGO_URL 用什么,所以我通过命令启动流星

meteor

看看mongodb地址meteor用的是什么,原来是

mongodb://127.0.0.1:3002/meteor

但要让 node 应用程序能够连接到 mongodb,我必须让流星应用程序保持运行。当它似乎工作时,控制台显示

listening

我尝试使用公共 DNS 访问该站点,但它不起作用。所以我不知道下一步该怎么做。

【问题讨论】:

  • 或者,您可能想尝试在生产中按预期运行的不同方法(通过流星包):github.com/matb33/meteor-ec2-install
  • 在使用该脚本时, MONGO_URL 仍然是 mongodb://127.0.0.1:3002/meteor 吗?
  • 差不多。端口 27017 而不是 3002。
  • 您可能还会发现 Meteor-UP 项目很有用:github.com/arunoda/meteor-up 本文还有使用 HAProxy 设置负载平衡的示例:meteorhacks.com/how-to-scale-meteor.html
  • 谢谢,我会调查的。在不知道它的含义之前,我在某处看到了命令“mup deploy”;现在我知道了:)

标签: mongodb deployment amazon-ec2 meteor


【解决方案1】:

您需要启动自己的 mongodb 实例。您在使用meteor 命令运行项目时看到的只是meteor 为您提供的用于开发的就地mongo db。在生产环境中,您只需启动自己的 mongodb(通过您的 linux 包管理器安装它),然后将您的 MONGO_URL 设置为 - 您可以使用本地 IP。

例如,在 AWS 上的 Ubuntu 上,如果您使用 apt-get install mongodb 安装 mongodb,它将在以下 URL 上运行:MONGO_URL='mongodb://localhost:27017/yourdbname'。如果您使用单独的 AWS 实例来运行数据库,那么您只需将 localhost 替换为该实例的 IP。

顺便说一句:您应该避免以 root 身份运行任何东西,包括。您捆绑的应用程序。我假设您这样做只是为了能够绑定到端口 80。这样做可能更安全的方法是允许您的用户在调用节点之前也使用以下命令绑定到该端口:

sudo setcap 'cap_net_bind_service=+ep' /usr/bin/nodejs

更新: 设置这些环境变量最简单的方法就是使用env

sudo env PORT=80 MONGO_URL=mongodb://localhost:27017/sidebar ROOT_URL=http://ec2-23-20-113-59.compute-1.amazonaws.com/ node ../bundle/main.js

【讨论】:

  • 我首先运行 sudo mongod --smallfiles 然后使用 MONGO_URL=mongodb://localhost:27017/meteor 启动节点应用程序,但仍然得到 Error: MONGO_URL must be set in environment
  • 谢谢。现在没有错误(只是空白);但是当我访问 ROOT_URL 时,我的浏览器说它无法连接到该地址。我想不出缺少了什么。
  • 您确定 url 是有效的公共 url,而不是 AWS 内部的吗?你试过你的实例的IP吗?
  • 地址正确。事实证明,我需要更改安全设置以允许入站 http,然后等待几分钟。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-12
  • 2011-06-25
  • 2012-08-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多