【发布时间】:2022-07-23 22:17:21
【问题描述】:
我的应用程序基于弹性 beanstalk 多容器 docker,我想将其升级到 amazon linux 2 docker。
更新的流程是什么
【问题讨论】:
标签: docker amazon-ebs
我的应用程序基于弹性 beanstalk 多容器 docker,我想将其升级到 amazon linux 2 docker。
更新的流程是什么
【问题讨论】:
标签: docker amazon-ebs
下面我将解释我如何处理从多容器 docker 到 amazon linux 2 的迁移,如果有兴趣,我还将包含 github 的 yaml 文件。此外,不要忘记将正确的策略附加到您的 IAM 角色,以使其正常工作(ECR 和 ELB 权限)。
我所做的基本上是在弹性 beanstalk 上创建一个新应用程序,并将 Docker 下的 Amazon Linux 2 平台指定为部署选项。
当新服务器启动并使用最新代码运行时,我将应用 URL 从具有 MX 记录的域提供商更改为来自 ELB 的新应用 URL。
下面我将附上我的 docker-compose.yaml 文件以及 Github 工作流程以及部署到 ELB 的部分,如果您有兴趣(或者如果它可能对其他人有帮助)
Docker-compose.yaml,你需要删除镜像或者插入你自己的镜像标签 url。
version: '3'
services:
node-app:
image: <IMG-TAG here e.g from ECR repository>
ports:
- 80:80
github.yaml
deploy-staging:
runs-on: ubuntu-latest
needs: [build]
steps:
- uses: actions/checkout@v2
- name: Generate deployment package
run: |
zip -r deploy.zip *
- name: Deploy to EB
uses: einaregilsson/beanstalk-deploy@v9
with:
aws_access_key: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
application_name: test
environment_name: test
version_label: ${{ github.sha }}
region: eu-north-1
deployment_package: deploy.zip
use_existing_version_if_available: true
【讨论】: