iT邦幫忙

2022 iThome 鐵人賽

DAY 12
0
自我挑戰組

web 應用開發筆記系列 第 12

[Day 12] 技能前哨站 - 玩轉 DevOps (下)

  • 分享至 

  • xImage
  •  

上一篇以說明如何將前端的應用透過 AWS 部署到雲端服務上,如此一來就可以讓知道 URL 的人拜訪你的網站,再來我們需要將後端也部署到 AWS 上。

開始

在之前的筆記中,我們使用 Docker 來建立 MySQL 並使用 python 的本地端環境利用 Flask 框架完成我們的 todo list 後端系統,而將它部署到 AWS 上也只需要相應的元件即可:

  • RDS
  • Lambda / ECS

RDS 是 AWS 提供的雲端資料庫系統,可支援主流的關聯是資料庫,諸如 MySQL, MariaDB, PostgreSQL 都有支援,我們可以建立一個 MySQL 版本的 RDS。

建立 RDS

RDS

我們可以使用免費方案來建立我們的應用


Lambda 是 AWS 提供的 serveless 服務,目前有提供 docker image 的版本,此功能需配合 AWS 另一個服務 ECR ,功能是存放建立好的 docker image,透過連結對應的 ECR image,lambda function 可以直接執行 image 並執行我們的程式。

但 Lambda 需要撰寫對應的 route 規則並透過 API Getway 的設定來將位址指定到對應的 action 內,如此一來 Flask 框架所建立的應用就需要做一層轉換才可以使用,因此可以使用 ECS service 來執行我們 todo list 專案。

ECS 是 AWS 提供的容器化服務,“Amazon ECS 是一種全受管容器協同運作服務,可輕鬆地讓您部署、管理和擴展容器化應用程式”,透過他我們可以將我們利用框架建立的程式包成 docker image 並 上傳至 ECR,透過 ECS 的 service 模式連結 ECR 對應的 image,如此來將 todo list 後端系統在 AWS ECS 上面執行。

建立 ECS

ECS

ECR 上傳

ECR

建立後可依照指令將 todo list 專案包成 docker image 並推送到 ECR

ECR2

最後連結 ECS 與 ECR 即可


上一篇
[Day 11] 技能前哨站 - 玩轉 DevOps (中)
下一篇
[Day 13] 技能前哨站 - 初談資料視覺化
系列文
web 應用開發筆記30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言