创建 AWS CodeDeploy 应用程序
我们将使用 AWS CodeDeploy 自动将 PHP 应用程序部署到 EC2 服务器中。但 CodeDeploy 从哪里获取要部署的文件呢?它会从 S3
存储桶中获取。但我们的解决方案代码是如何进入 S3
的?我们将告诉 Bitbucket Pipelines 将代码上传到 S3!我们将在本章稍后部分介绍这一点:

请按照以下步骤设置 AWS CodeDeploy,一旦我们的所有自动化测试都通过,我们的 Bitbucket CI 管道就会触发该操作:
-
在 AWS 控制台中,搜索 CodeDeploy 服务并单击 创建应用程序 按钮:
Figure 2. Figure 10.17 – Creating the CodeDeploy application -
在 CodeDeploy 向导中,在 “应用程序配置” 部分中使用您想要的任何名称。 然后,在 计算平台 字段中,选择 EC2/本地选项并单击创建应用程序按钮:
Figure 3. Figure 10.18 – Application configuration section您将被重定向到 CodeDeploy 应用程序 页面。
-
接下来,单击 创建部署组 按钮:
Figure 4. Figure 10.19 – The Create deployment group button在部署组名称部分中,使用您想要的任何名称。在此示例中,我将使用
codedeploy_group1
:Figure 5. Figure 10.20 – Deployment group wizard – group name -
接下来,在服务角色(Service role)部分中,选择我们在本章前面创建的 IAM 角色:
Figure 6. Figure 10.21 – Deployment group wizard – IAM role -
接下来,在环境配置部分,选中 Amazon EC2 实例复选框。然后,在标签组部分,添加我们之前创建的 EC2 实例名称,即
tddphp-instance1
。这一点非常重要。这样我们就可以告诉 CodeDeploy,我们要在这个特定实例中部署应用程序。如果还想部署到其他实例,可以在此处添加更多标签:Figure 7. Figure 10.22 – Deployment group wizard – EC2 instance details -
接下来,在负载均衡器部分中,取消选中启用负载均衡复选框,然后单击创建部署组按钮:
Figure 8. Figure 10.23 – Deployment group wizard – Load balancer
伟大的!这就是 AWS 控制台中的 CodeDeploy 配置。接下来,我们需要进入刚刚创建的 EC2 实例并安装一些我们需要的应用程序,以便它能够连接到 CodeDeploy,并且我们能够运行 Docker 容器。