当代码存储库不在 git 中时,如何在 AWS 网络服务器中部署代码


How to deploy code in AWS webserver when code repo is NOT in git?

最近,我参与了一个项目,我在 AWS 中设置了一个 LAMP 堆栈,并帮助团队构建其他基础设施。根据公司政策,我们需要每 60 天创建一个新实例,获取最新的 ami 并杀死前一个实例。出于这个原因,我要求开发团队将 php 代码移动到 git 存储库。这将帮助我自动化构建,以便我可以直接从 git 中提取代码。但是,他们说出于某种许可原因,他们不想在 git 中移动代码,因为他们使用的代码是从 phpgrid(供应商)购买的。这对我来说有点奇怪...无论如何,如果代码不在 git 中,我们如何在 Web 服务器中自动化代码部署?对最佳实践有什么想法吗?不想从某人的机器:( FTP

代码

AWS Code Deploy 服务专为此类代码部署而构建。

AWS

CodeDeploy 是 AWS 部署服务系列的一部分,这些服务具有 包括 AWS Elastic Beanstalk、AWS CodePipeline、AWS CloudFormation、 和 AWS OpsWorks。AWS CodeDeploy 协调应用程序部署 到 Amazon EC2 实例和/或本地实例。(本地 实例是不是 Amazon EC2 实例的物理设备。

应用程序可以包含可部署的内容,如代码、Web 和 配置文件、可执行文件、包、脚本等。自主技术 CodeDeploy 从 Amazon S3 存储桶和 GitHub 部署应用程序 存储 库。

您实际上可以使用任何存储库。您只需要一个过程即可将代码从其存储库移动到指定的 S3 存储桶。代码可以在任何地方:SVN、内部部署等。 只需将其压缩,移动到 S3 并注册修订并根据需要进行部署。GIT 存储库不是必需的,但 CodeDeploy 直接支持它。

我们将该过程与我们的持续集成服务器 Jenkins 集成,因此所有构建都将作为 CodeDeploy 就绪修订版发送到 S3。

部署到 AWS 实例时,使用此功能无需任何费用 - 免费!