You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用私有AWS容器注册表中的Docker容器创建AWS Elastic Beanstalk实例

用AWS ECR容器创建Elastic Beanstalk实例

下面分别介绍通过控制台、AWS CLI、EB CLI三种方式的操作步骤:

一、AWS控制台操作

  1. 编写Dockerrun.aws.json配置文件
    这个文件是EB识别ECR镜像的核心,格式示例如下,替换成你自己的ECR镜像地址和容器端口:
{
  "AWSEBDockerrunVersion": "1",
  "Image": {
    "Name": "123456789012.dkr.ecr.us-east-1.amazonaws.com/your-image:latest",
    "Update": "true"
  },
  "Ports": [
    {
      "ContainerPort": "80"
    }
  ]
}
  1. 创建EB环境
  • 打开Elastic Beanstalk控制台,点击「创建应用」。
  • 填写应用名称,选择「Web服务器环境」,进入平台选择环节。
  • 平台类型选「Docker」,推荐选「Docker running on 64bit Amazon Linux 2」系列的栈版本。
  • 到「应用代码」步骤,选择「上传代码」,点击「上传」按钮,选中刚才创建的Dockerrun.aws.json文件,确认后点击「创建环境」。
  • 等待环境部署完成,EB会自动拉取你的ECR镜像并启动容器。

二、AWS CLI操作

  1. 准备Dockerrun.aws.json文件(同控制台步骤的格式),并上传到一个S3桶中。

  2. 创建EB应用

aws elasticbeanstalk create-application --application-name your-app-name
  1. 创建并部署环境
    先通过以下命令查询可用的Docker栈版本:
aws elasticbeanstalk list-available-solution-stacks | grep "Docker running on 64bit Amazon Linux 2"

然后用查到的栈名称执行创建命令:

aws elasticbeanstalk create-environment \
  --application-name your-app-name \
  --environment-name your-env-name \
  --solution-stack-name "64bit Amazon Linux 2 v3.5.4 running Docker" \
  --source-bundle S3Bucket=your-s3-bucket-name,S3Key=Dockerrun.aws.json

三、EB CLI操作

  1. 初始化EB CLI环境
    在本地新建一个空目录,执行初始化命令:
eb init

按照提示选择AWS区域、输入应用名称,选择Docker作为平台类型。

  1. 在当前目录放入Dockerrun.aws.json文件(同前面的格式)。

  2. 创建并部署EB环境

eb create your-env-name

EB CLI会自动完成配置文件上传、环境创建和镜像部署的全流程。

注意事项

  • EB环境使用的IAM角色需要具备ECR访问权限,默认的AWSElasticBeanstalkWebTier角色已经包含AmazonEC2ContainerRegistryReadOnly策略,自定义角色需要手动添加该权限。
  • ECR镜像所在区域要和EB环境区域一致,否则需要额外配置跨区域访问权限。

内容的提问来源于stack exchange,提问作者Primico

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 12:57:38