如何将yeoman构建部署到aws node.js



我是yeoman的新手,正在尝试将yeoman生成的angularjs站点部署到弹性豆茎上。在我部署的那一刻,我收到了一个502:坏网关。我能够用之类的东西将一个简单的nodejs应用程序部署到aws

server.js

var http = require("http");
http.createServer(function(request, response) {
response.writeHead(200, {"Content-Type": "text/plain"});
response.write("Hello World");
response.end();
}).listen(process.env.PORT || 8888);

如果不在url中指定端口,则此页面可以正常工作。不确定这是否与这个问题有关。

使用yeoman角发生器的过程非常标准,即

yo angular
yo angular:controller testController
..add some directives / views etc..
grunt server -- serves up pages correctly on port 9000
grunt -- which creates the dist folder

在这个阶段,我在本地有一个正在工作的angularjs应用程序,从这里开始,我遵循正确部署早期hello world示例的相同工作流程(提交到git repo,提供带有弹性beanstall-cli..等的图像)。我根据/dist文件夹的内容制作了一个repo,并将其部署在我获得502.的地方

我这里有两条线索,首先我应该在端口80上收听——尽管我之前在8888上的样本有效,所以我认为下一个要求是最相关的,那就是根目录中名为server.js的文件。

grunt构建输出\dist包含:

bower_components
views
styles
scripts
     25e920e4.modules.js
     5e188624.scripts.js
     76c21dca.plugins.js

所以我不确定下一步该怎么做。我注意到app.js不是dist输出的一部分,但现在我有了这3个新的脚本js文件。我需要配置什么才能使nodejs容器提供这种新结构?

以下是原始的app.js

'use strict';
angular.module('nodealphaApp', [])
  .config(function ($routeProvider) {
    $routeProvider
      .when('/', {
        templateUrl: 'views/main.html',
        controller: 'MainCtrl'
      })
      .otherwise({
        redirectTo: '/'
      });
  });

让我知道我是否可以提供更多信息

干杯!

我也遇到了同样的问题!他们确实希望您使用grunt buildcontrol,但AWS没有选项。grunt buildcontrol推送到远程,这不是Elastic Beanstalk的部署方式。

当您键入eb deploy时,它将部署.git目录中的所有内容,而不仅仅是您的dist/目录。我的工作是在dist/中创建一个本地git存储库。

  1. 删除回购中的任何弹性Beanstalk文件。仅供参考,它们是隐藏的
  2. 使用终端,从项目的根文件夹中选择cd dist/
  3. 运行git init以创建本地git repo
  4. 进行初始提交,因为dist/一直是.gitignore-d
  5. dist/内正常运行eb initeb createeb deploy
  6. 如果你需要,设置你的环境变量;你的应用程序没有
  7. eb open,祝你好运

下面是一个Angular Nodejs模板的示例:https://github.com/joshdmiller/ng-boilerplate

如果端口匹配,也许您应该检查Grunt的配置文件。在Gruntfile.js中,您将拥有9000端口,在Nodejs代码中,您正在听8888。因此,更改其中一个,使它们具有相同的端口。

看看:

grunt.registerTask('server', function (target) {

它将运行一些任务,并且在其中一个任务中(可能是"打开")将使用Grunt配置中的端口号。参见

  grunt.initConfig({ ...

我希望这对你有帮助。

最新更新