最近正打算使用 GitHub Actions 來串接 AWS 服務 (ECR + ECS),上網找了一堆 ECR 套件,發現就連 AWS 官方都只有實作 Login 進 ECR,後面編譯跟上傳動作就需要自己寫,可以看看底下是 AWS 官方套件的範例:
|
|
覺得蠻神奇的是為什麼不把 Plugin 寫更完整些,讓使用者不用再執行 docker 指令,所以我直接把 Drone 官方套件直接改寫支援 GitHub Actions 服務,詳細的操作文件可以參考這邊
教學影片
如果對於課程內容有興趣,可以參考底下課程。
- Go 語言基礎實戰 (開發, 測試及部署)
- 一天學會 DevOps 自動化測試及部署
- DOCKER 容器開發部署實戰 (課程剛啟動,限時特價 $900 TWD)
如果需要搭配購買請直接透過 FB 聯絡我,直接匯款(價格再減 100)
使用方式
本篇會使用兩種 CI/CD 工具,分別是 Drone 及 GitHub Actions,詳細檔案內容可以參考這邊。底下是使用 Drone CI/CD:
|
|
底下是使用 GitHub Actions
|
|
兩種使用方式都是一樣的,會用 Drone CI/CD,那使用 GitHub Actions 也不會有問題,另外還支援了 cache_from
,省下了一點部署的時間,時間取決於跑的專案 Image 大小了。
See also
- Go 1.16 推出 Embedding Files
- 用 Docker 每天自動化備份 MySQL, Postgres 或 MongoDB 並上傳到 AWS S3
- 用 GitHub Actions, Drone CI 或 GitLab CI 部署 AWS Lambda
- 如何將前端網站打包成 Docker Image
- 使用 Docker BuildKit 加速編譯 Image
- Docker 推出官方 GitHub Actions 套件
- Go Modules 處理 Private GIT Repository 流程
- 用五分鐘安裝好 Drone 搭配 GitHub 自動化環境
- 使用 Docker 五分鐘安裝好 Gitea (自架 Git Hosting 最佳選擇)
- [Go 教學] graceful shutdown 搭配 docker-compose 實現 rolling update