建立 aws docker image repo
- 建立 ECR
- 開啟 AWS console -> 選擇 Amazon ECS 的服務 -> 選擇 Repositories
- 選擇 create repository
- 建立完成後,會看到上傳的方法
- 按照 ecs 中,的說明 aws ecr get-login 後,會產生出 docker login … 的語法,透過這個進行 docker login
aws ecr get-login --no-include-email --region us-east-1
: 取得docker login -u AWS -p ....
- 依據 1 中取得的 login 指令,進行 docker login
- 上傳 docker image 到 ECR 中
docker build -t xxx {image}
docker tag xxx your-ecr-position/your-repo-name:latest
docker push your-ecr-position/your-repo-name:latest
透過 beanstalk 部署
- 建立好一個 eb application
- 設定好
Dockerrun.aws.json
envsubst
可善用此指令
- 壓縮 含有設定檔的 folder,並上傳到 aws s3
cd folder && zip -r $folder.zip ./ && aws s3 cp $folder.zip s3://{bucket_name}/{folder.zip}
- 建立 eb 新的版本
1
2
3
4aws elasticbeanstalk create-application-version \ --application-name {your-eb-application-name} \ --version-label {your-eb-version-label}\ --source-bundle S3Bucket={bucket_name},S3Key={folder.zip}
- 部署新版本
1
2
3aws elasticbeanstalk update-environment \ --environment-name {your-eb-application-name} \ --version-label {your-eb-version-label}