从 Bitbucket 到 Elastic beanstalk - PHP 部署

从 Bitbucket 到 Elastic beanstalk - PHP 部署

语境

在bitbucket cloud上搭建了一个PHP项目,代码在XAMPP本地开发,代码运行在Amazon Web Service Elastic Beanstalk环境中。

问题

我在本地提交更改,然后推送到 Bitbucket。现在我需要从 Bitbucket 部署到 AWS Elastic Beanstalk 实例。

我不想使用任何其他工具来执行此操作,也不想使用 zip 文件上传到 Elastic Beanstalk。而是直接从 Bitbucket 执行到 Elastic Beanstalk。我该怎么做?

答案1

我遇到过类似的问题,需要从 Bitbucket 部署到 Elastic Beanstalk。虽然我的是一个 Python 应用程序,但以下内容与语言无关。

  • 使用 Bitbucket 管道压缩您的代码并将其放入版本控制的 S3 存储桶中(版本控制在这里很重要)
  • 在 AWS CodePipeline 中创建一个管道,从 Bitbucket 刚刚将包放入的 S3 存储桶中获取 zip 文件。AWS CP 将使用在 AWS 系统内默默发布的版本控制通知主题自动触发。
  • 将管道的部署阶段设置为您的 Elastic Beanstalk 环境。

我已经使用这种方法一段时间了,并没有遇到任何问题。我们还有其他属于 Bitbucket 和 AWS 管道的部分(测试和构建 Docker 映像),但这种方法在没有 CodePipeline 中的“构建”阶段的情况下应该可以正常工作。

答案2

似乎没有解决方案可以让您直接从 Bitbucket 部署到 Elastic Beanstalk。

但是,如果您在 Bitbucket 上使用 git 存储库,则可以直接从命令行界面部署到 Elastic Beanstalk。

这是通过结合使用 EB CLI 与 Git 来实现的。

http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/eb3-cli-git.html

答案3

使用 bitbucket 管道创建一个过程,当将其推送到分支时,它会将 eb 命令安装到管道,然后使用 eb 命令提示符将站点部署到正确的环境。

答案4

Bitbucket 团队一直坚持不提供任何解决方案。他们建议大家求助于 Google。我只听到团队的借口,没有答案。真遗憾。

答案是没有解决方案!

相关内容