如何使用离子框架将应用程序部署到亚马逊? (弹性豆茎首选)

时间:2014-12-31 14:11:33

标签: angularjs node.js amazon-web-services ionic-framework elastic-beanstalk

我有一个node.js应用程序,它创建HTTP服务器并处理套接字连接,我有一个Ionic Framework Application(angular.js) 你能给我一些如何在AWS上运行它的指南吗? 在我的本地系统上,我只需运行命令 - node app.js,然后转到ionic app文件夹并输入ionic serve

拜托,我终于堆积了十几个想法,甚至亚马逊支持也无法帮助我,出于某种原因。

2 个答案:

答案 0 :(得分:4)

Elastic Beanstalk(EB)支持node.js,但我没有在列表中看到angular.js,似乎ionic是angular.js的插件/框架(需要你确认) )也不包括在内。

所以我的想法是解决你的问题(我没有实现它,需要你的确认)

使用配置文件,您可以自定义EB并安装缺少的包。

尝试让我知道结果。

此外,如果您可以花时间阅读有关AWS Service Cloudformation及其模板的文档。它将帮助您了解EB的工作原理。

答案 1 :(得分:2)

我想创建一个使用node.js作为服务器和Ionic Framework作为前端框架的Web应用程序,最后在AWS ElasticBeasntalk上运行这一切

Ionic是用AngularJS编写的(CodeSchool非常有用free course)。 AngularJS是一个库,您可以将其上传到用户的浏览器,包括<script/>。无需在服务器环境中安装它。

这是我最终提出的:

  1. 您创建了节点应用程序app.js - 它是服务器端。
  2. 从离子项目
  3. 复制/www文件夹
  4. 在app.js中,您需要通过此文件夹和index.html文件到服务器,该文件由您的app.js初始化
  5. app.get('/', function (request, response) { response.sendFile(__dirname + "/public/index.html"); });

    app.use(express.static(__dirname, 'public'));
    

    现在你有两个.js应用程序 - Angular(前端)和Node(后端)在一个存储库中,并通过简单的node app.js命令运行。

    您需要做的就是将其部署到ElasticBeanstalk - 创建package.json文件,压缩项目,创建Node.js环境并将此版本上传到您的运行环境。

    P.S。 要正确压缩 - 进入您的文件夹并使用zip -r 1.zip .命令

    P.P.S。 package.son档案样本:

    {
      "name": "myApp",
      "version": "0.0.1",
      "private": true,
      "scripts": {
        "start": "node app.js"
      },
      "dependencies": {
        "express": "4.10.6",
        "request":"2.51.0",
        "redis":"0.12.1"
        ----your libraries here ---
      }
    }