将 Meteor 应用程序部署到 Elastic Beanstalk

Posted

技术标签:

【中文标题】将 Meteor 应用程序部署到 Elastic Beanstalk【英文标题】:Deploy Meteor App to Elastic Beanstalk 【发布时间】:2015-09-21 20:29:14 【问题描述】:

我们正在开展一个项目,我们正在寻找在 Elastic Beanstalk 上部署我们的流星应用程序,这并不容易,我们在谷歌上搜索认真寻找设置项目的正确方法。有人可以帮助我们提供一些说明或相关文章。 提前致谢,

最好的,

【问题讨论】:

到目前为止你还没有什么?你必须给我们一些东西......应用程序的结构等。 嘿,感谢您的关注,这是一个投票应用程序,现在我们正处于我们国家的选举年,所以我们决定现在就使用 angular-meteor 和 ionic 开展这个项目我们只想知道如何使用正确的设置进行部署,我们在 mongolab 上有 mongoDB。所以我们只希望 nodejs 实例以正确的方式运行 我在这里做了一个分步指南:***.com/a/38580848/2010764 【参考方案1】:

可以将其部署为运行 Meteor 构建过程所需的包。

在您的应用目录之外

meteor build --directory /path/to/builddir

这将反过来创建一个 nodejs 应用程序,然后您可以将其运送到 AWS EB(以 tar 或任何形式)。

使用 EB,您可以指定一些要运行的命令,然后这些命令将允许您将 EB 上的 Meteor 应用程序作为独立应用程序运行。这很重要,因为 EB 允许您指定运行 NPM 的路径。

cd bundle/programs/server && npm install(确保 Fibers 等正在运行)

指定节点路径:bundle/main.js

设置环境变量 环境端口='80' env ROOT_URL='http://www.appname.com'

所有这些都完成后,尝试部署。

【讨论】:

谢谢你!我们正在努力,我们将在这里更新我们使用 EB 的经验。【参考方案2】:

在此处努力部署 Meteor 应用程序。 (流星@1.3.2.4) 我认为@Flanamacca 的回答基本正确,但想补充一些细节。

bundle/ 中添加 package.json,如下所示。


  "name": "myapp",
  "version": "0.0.1",
  "scripts": 
    "prestart": "cd programs/server && npm install",
    "start": "node main.js"
  

并创建bundle/.ebextensions/whatever.config 喜欢...

option_settings:

  - option_name: PORT
    value: 8081

  - option_name: MONGO_URL
    value: mongodb://admin:passwd@mongo-server:27017/my-db-name

  - option_name: ROOT_URL
    value: http://myapp.some-val.region-name.elasticbeanstalk.com

eb initeb deploy 进行部署

【讨论】:

如果您有新问题,请点击 按钮提出问题。如果有助于提供上下文,请包含指向此问题的链接。 - From Review @diegochavez,进展如何?你能分享一些东西吗?尽管部署到/var/app/current,但仍然无法在这里工作。它需要下划线。不知道该怎么办。配置似乎很脆弱,很难知道日志文件的内容。 它现在在这里工作。因为关于 METEOR_SETTINGS 有一个错误,我做了一个 workarround as like this

以上是关于将 Meteor 应用程序部署到 Elastic Beanstalk的主要内容,如果未能解决你的问题,请参考以下文章

将 Meteor 部署到 Google App Engine 2017

MongoDB / Meteor / 将 MONGO_URL 导出到已部署的应用程序

MongoDB / Meteor / 将 MONGO_URL 导出到已部署的应用程序

将 Meteor 应用程序从 OS X 部署到 Linux 会导致 bcrypt 问题

将 Meteor 应用程序部署到 Synology armv7:“node-fibers”存在问题

将 Meteor 项目部署到我自己的域?