ssh -i your-key.pem ec2-user@your-ec2-public-ip
sudo yum update -y
sudo amazon-linux-extras enable docker
sudo yum install -y docker
sudo service docker start
sudo systemctl enable docker
sudo usermod -aG docker ec2-user
⚠️ 重新连接 SSH 后才能生效,或用
newgrp docker
立即生效。
docker version
docker info
docker run -d -p 80:80 nginx
然后在浏览器访问你 EC2 的公网 IP:
http://
确保 EC2 安全组允许端口 80 访问:
类型 | 协议 | 端口范围 | 来源 |
---|---|---|---|
HTTP | TCP | 80 | 0.0.0.0/0 |
已安装并登录好 AWS CLI
本地已构建好镜像(比如 myapp:latest
)
已配置 AWS CLI 凭证(aws configure
)
aws ecr create-repository --repository-name myapp --region cn-north-1
示例输出中会有一个 repositoryUri
,例如:
123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp
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 和区域 替换掉上面的内容
将你本地镜像标记为 ECR 地址:
docker tag myapp:latest 123456789012.dkr.ecr.cn-north-1.amazonaws.com.cn/myapp:latest
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