amazon-web-services - 当我将 .war 文件推送到 s3 时,如何在从 s3 触发的 codedeploy 中自动部署?
问题描述
应用程序在 tomcat 上运行并使用 ECS 托管并选择了在 codedeploy 中自动创建应用程序的蓝/绿部署类型我单独创建了一个 tomcat 容器,对其进行配置并将我的应用程序放在 webapp 文件夹中。然后我从中创建图像并将其推送到 AWS ECR。使用这张图片,我在 ECS 中托管了我的应用程序。但是当我将war文件推送到s3时,我想使用codedeploy自动部署。我不明白如何运行脚本来解压缩战争文件并将解压缩的数据放入容器内的 webapp 文件夹中。谢谢你的回答
解决方案
纳迪姆,
您有两个选项可以自动化您的 CI/CD 管道。我建议您为此目的使用 AWS CodePipeline。
- 每当您将新图像版本放入 ECR 时触发 CodePipeline(是的,codepipeline 开箱即用地支持此功能)。
- 使用 S3 事件触发 Lambda。每当您将文件上传到 S3 时,它都会触发 Lambda。然后使用 Lambda 触发代码管道。
谢谢。让我知道它是否有帮助。
推荐阅读
- python - 如何在 gitlab ci/cd 中包含文件?
- python-3.x - Python网络刮刀不会保存图像文件
- c - 给定用户一个 3 位数字,找到并打印它的最小数字
- flutter - 如何处理这个颤振异常(未处理的异常:NoSuchMethodError:方法'findAncestorStateOfType'在null上被调用)
- php - 在 MySQL 中将 SELECT 与字段 + 变量一起使用
- sql-server - 超过推荐值时的 MAXDOP 设置
- ansible - 循环查找文件并删除它们
- git - vscode 错误:无法将引用推送到远程。尝试先运行“拉”以集成您的更改
- regex - 解析 git 历史记录并对其进行模式匹配,一旦找到匹配项,就在变量中捕获附近的值
- ssis - SSIS 2005 至 2019