Docker 镜像上传到 AWS ECR:从构建到推送的全流程

发布于:2025-06-10 ⋅ 阅读:(16) ⋅ 点赞:(0)

一、在 EC2 实例中安装 Docker(适用于 Amazon Linux 2)

步骤 1:连接到 EC2 实例

ssh -i your-key.pem ec2-user@your-ec2-public-ip

步骤 2:安装 Docker

sudo yum update -y
sudo amazon-linux-extras enable docker
sudo yum install -y docker

步骤 3:启动并设置 Docker 服务

sudo service docker start
sudo systemctl enable docker

步骤 4:将当前用户加入 docker 组(可选)

sudo usermod -aG docker ec2-user

⚠️ 重新连接 SSH 后才能生效,或用 newgrp docker 立即生效。


步骤 5:验证 Docker 安装

docker version
docker info

二、运行测试容器(比如 nginx)

docker run -d -p 80:80 nginx

然后在浏览器访问你 EC2 的公网 IP:

http://<your-ec2-public-ip>

 三、安全组配置检查

确保 EC2 安全组允许端口 80 访问:

类型 协议 端口范围 来源
HTTP TCP 80 0.0.0.0/0

搭建ECR仓库


 前提准备

  • 已安装并登录好 AWS CLI

  • 本地已构建好镜像(比如 myapp:latest

  • 已配置 AWS CLI 凭证(aws configure


🔧 步骤 1:创建 ECR 仓库

aws ecr create-repository --repository-name myapp --region cn-north-1

示例输出中会有一个 repositoryUri,例如:

123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp

🔧 步骤 2:登录到 ECR

aws ecr get-login-password --region cn-north-1 | docker login --username AWS --password-stdin 123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn

用你自己的 账号ID 和区域 替换掉上面的内容


🔧 步骤 3:给镜像打标签(tag)

将你本地镜像标记为 ECR 地址:

docker tag myapp:latest 123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp:latest

🔧 步骤 4:推送到 ECR

docker push 123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp:latest

 推送成功后

你就可以在 ECS 服务中引用这个镜像地址

123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp:latest

并在 ECS 的任务定义中填入该镜像即可运行容器。


 可选:检查上传的镜像

aws ecr describe-images --repository-name myapp