在 ElasticBeanstalk 上运行 Grunt

2023-11-25

我有一个节点应用程序,需要 grunt 进行“构建”,然后应用程序才能成功执行。 (运行源代码的连接/缩小/加速等)。我已经在具有 SSH 访问权限的 EC2 实例上运行了它,因为我可以通过 SSH 进入目录并在部署过程中运行 Grunt。然而,为了自动化此操作,我现在将应用程序移至 ElasticBeanstalk,但我很难让应用程序成功运行 grunt。迁移到 EB 的原因是让 SSH 密钥远离实时服务器,以便这些 EB 实例设置为没有 ssh 访问权限。

似乎没有可用的官方文档,有人能为我指明一个能够实现上述目标的好方向吗?我需要在应用程序启动之前执行 grunt,以便应用程序具有可用的文件(否则会出现 404)。


运行 grunt 与运行 gulp 非常相似,因此,我将在下面包含我的配置。

这是在一个.eb扩展名我的项目根目录下的文件夹,名为01运行配置。您可以有多个配置文件,它们将按字母顺序运行(因此01在一开始。)

这基本上只是指示进程按顺序运行这些命令,同样,它是按字母顺序完成的,所以我相应地命名了它们。

commands:
  01get_sudo:
    command: echo Defaults:root \!requiretty >> /etc/sudoers
  02npm_install:
    command: sudo yum -y --enablerepo=epel install nodejs npm
  03npm_install_bower:
    command: sudo npm install -g bower
  04npm_install_gulp:
    command: sudo npm install -g gulp
  05yum_install_git:
    command: sudo yum -y --enablerepo=epel install git
container_commands:
  01bower_install:
    command: sudo bower install --allow-root
  02gulp_sass:
    command: sudo gulp sass
  1. 获取 sudo 访问权限
  2. 使用 yum 安装 Node.js 和 npm
  3. 安装 Bower (我的 gulp 进程需要 Bower)
  4. 安装吞咽
  5. 安装git(bower需要)
  6. i then run two container commands, which happen after npm install and before npm start:
    1. 凉亭安装
    2. 咕噜咕噜

在您的情况下,您只需删除 Bower 和 git 安装,安装 grunt-cli,然后运行 ​​grunt 即可。


自从这样做以来,我通过在部署构建的文件并将其提交到 git 存储库之前预先完成所有工作,消除了对上述过程的需求。这至少是一次很好的学习经历,让我能够更好地控制由 beanstalk 部署的 ec2 实例。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ElasticBeanstalk 上运行 Grunt 的相关文章

随机推荐

  • Spring ControllerAdvice 中未处理 404 异常

    我有一个简单的 Spring MVC 应用程序 我想在其中使用处理所有未映射的 url ControllerAdvice 这是控制器 ControllerAdvice public class ExceptionHandlerControl
  • 如何合并列表中相似的项目

    我在谷歌上没有找到任何相关的东西 所以我希望在这里找到一些帮助 我有一个 Python 列表 如下所示 hoose 200 Bananphone 10 House 200 Bonerphone 10 UniqueValue 777 我有一个
  • OS X 上的 gprof 问题:[程序] 不属于主机体系结构

    我跑步时遇到问题gprof在 OS X 上 该文件test c is include
  • 使用未解析的标识符 PFFacebookUtils

    我已经完成了这里提到的所有操作 https www parse com docs ios guide fbusers iOS 用于在 iOS 中实现 Facebook 登录 问题是我有一个编译错误 使用未解析的标识符 PFFacebookU
  • 如何从 Android Gradle 构建通过 FTP 传输文件?

    我正在尝试在 Gradle 构建后通过 FTP 传输签名的 APK 我已经添加了将签署 APK 的新构建配置 但我一直在尝试弄清楚如何调用 FTP 任务 我找到了一个官方的样本第 59 6 条 但是它抱怨它无法解析依赖项 org apach
  • 如何在 wpf 中使用 RelayCommand?

    我怎样才能使用RelayCommand in wpf Relay 命令在 WPF 中不存在 它只是一个外部类 在这篇 MSDN 文章 如果你想使用它 你需要自己编写它 否则 您可以使用 WPF 工具包中的 Delegate 命令here它比
  • Android 中带有图像和视频的自定义图库可选择多个项目

    我想创建一个自定义图库来显示 SD 卡中的所有图像和视频 以及持续时间 我正在使用以下代码构建自定义画廊 Code final String columns MediaStore Images Media DATA MediaStore I
  • 计算列表中有多少个对象类型Python

    如果我有一个 python 列表 a 1 1 23 abc ABC 6 45 2 3 4 4 98 有没有一种非常简单的方法来计算对象类型的数量a 比以下更简单但产生相同结果的东西 l i for i in a if type a i in
  • 在 C# 中获取两个数组之间的“差异”?

    假设我有这两个数组 var array1 new A B C var array2 new A C D 我想了解两者之间的差异 我知道我只需几行代码即可编写此内容 但我想确保我不会缺少内置语言功能或 LINQ 扩展方法 理想情况下 我最终会
  • 无法找到要从 groovy 闭包中的 newInstance 上的列表中调用哪个方法 ()

    我正在学习 groovy 我正在尝试使用所有字段的默认值动态初始化我的类 所以我的处理方式是 我获取所有属性的列表并获取该对象的类型并创建该类型的对象 但是在执行时出现错误newInstance Exception in thread ma
  • numpy.sum 可能比 Python for 循环慢

    当对特定轴上的数组求和时 专用数组方法array sum ax 实际上可能比 for 循环慢 v np random rand 3 1e4 timeit v sum 0 vectorized method 1000 loops best o
  • 如何在 Web API 请求中的 FromBody ViewModel 中使用带有 EnumMember 属性的枚举?

    我正在尝试在 ASP NET Core Web API 项目中实现 HttpPost 方法 FromBody 查看模型和枚举 过去 将视图模型与 FromBody 属性效果很好 在我的特定场景中 我想提供一个 JSON 端点 在其中将给定值
  • 如何在 Laravel 中流式传输视频

    我正在尝试流式传输刀片文件中的视频 通常视频正在加载 但我无法来回播放 这是我关注的链接 https codesamplez com programming php html5 video streaming tutorial 我已经在我的
  • 当类型已知时,是否有任何技术原因在 C# 中使用或不使用 var?

    我读到的 C 代码似乎越来越多地使用var类型标识符 foreach var itemChange in ItemChanges 代替明确地说明类型 foreach ItemChange itemChange in ItemChanges
  • 如何从.cer和.key获取.pfx文件?

    在此提问之前 我已经搜索了很多关于我的问题 而且问题仍然存在 以下是我已经阅读过的帖子参考 如何从证书和私钥创建 pfx 文件 将 CERT PEM 证书转换为 PFX 证书 如何从 key和 crt文件获取 pem文件 如何从 cer 文
  • 划分类:jenks 与 kmeans

    我想将一个向量 长度约为 10 5 分为五个类 具有功能classIntervals从包装中classInt我想用style jenks 自然中断 但即使对于只有 500 的小得多的向量 这也会花费大量时间 style kmeans 几乎立
  • 使用 DataContext 从 LINQ 查询填充 DataTable 的最快方法

    我正在尝试运行 linq 查询 但我需要结果作为数据表 因为我使用它来将来自不同查询的记录存储在同一视图状态对象中 下面的 2 个版本可以编译 但返回一个空集 确切的错误是 值不能为空 参数名称 来源 是的 我已经检查过有数据 MyData
  • 当前分支没有跟踪信息

    我使用 github 的时间相对较短 并且一直使用客户端来执行提交和拉取 我昨天决定从 git bash 尝试一下 并成功创建了一个新的存储库并提交了文件 今天我从另一台计算机对存储库进行了更改 我已经提交了更改 现在我回到家并执行了git
  • React:读取history.push中作为参数传递的数据

    我是新来反应的 我正在尝试发送一些数据作为参数history push 基本上 我在单击按钮时调用一个方法 并在该方法内调用一个 api 如果我得到成功响应 我会重定向到其他页面 并且我还需要传递一些数据 下面是我的代码 class Log
  • 在 ElasticBeanstalk 上运行 Grunt

    我有一个节点应用程序 需要 grunt 进行 构建 然后应用程序才能成功执行 运行源代码的连接 缩小 加速等 我已经在具有 SSH 访问权限的 EC2 实例上运行了它 因为我可以通过 SSH 进入目录并在部署过程中运行 Grunt 然而 为