Google Cloud 上基於無伺服器 Docker 的 Python 應用程式

學習在 Google Cloud Platform 上使用 Docker、Cloud Build 和 Cloud Run 建置和部署 Python Web 應用程式

從這 4 小時的課程,你會學到

  • 部署基於 Docker 的無伺服器 Python Web 應用程式
  • 在你的系統上設定 Google Cloud 命令列工具
  • 在本地建置並運行 Docker 容器
  • 將 Web 應用程式部署到 Google Cloud
  • 了解什麼是無伺服器( serverless )應用程式
  • 部署到 Google Cloud Platform 上的 Cloud Run
  • 為 Python 應用程式建置 Docker 容器
  • 學習並理解 Docker 容器以及它們為何有用
  • 使用 GitHub 學習 CI/CD 實踐
  • 利用 GitHub Actions 自動測試、建置和推送容器
  • 使用 GitHub Actions 工作流程管理 Google Cloud 專案
  • 實作 Google Secret 管理器並使用 GitHub 作為我們的單一事實來源
  • 學習各種 Docker 和 Dockerfile Debugging 技術。

要求

  • 建議使用Python(如Python 30天的前15天)
  • Web 應用程式開發(如我們的嘗試 Django 系列)
  • 願意克服困難,因為對方是值得的。

課程說明

使用 Docker 容器和 Google Cloud Run 部署無伺服器 Python 應用程式。

在託管無伺服器架構上運行應用程式使我們能夠專注於程式碼並部署更多內容,而無需擔心底層基礎設施。更好的是,我們的無伺服器應用程式在使用時只需要花錢,這是因為無伺服器應用程式可以擴展到 0 個運行實例或根據需要進行擴展。

無伺服器非常適合測試各種應用程式創意以及測試穩定應用程式的各個階段。 Cloud Run 是一項託管服務,可為你在 Google Cloud 上的專案解鎖無伺服器應用程式。這就是我們經營這個網站的方式。

Cloud Run 是在 Kubernetes 上運行的託管 Knative 產品,因此如果你有興趣部署自我管理的 Knative 服務,請考慮觀看我的課程嘗試 Knative

這是我們將在本課程中學習的內容:

  • 建立基本的 FastAPI Web 應用程式(使用 Python)
  • 在 FastAPI 中實作 python-decouple 來管理環境變數
  • 編寫基本的自動化測試以確保我們的應用程式按需要運行
  • 在建置容器之前準備好並了解 Dockerfile
  • 本地建置 Docker 容器
  • 在本機上運行自訂 Docker  image(容器)
  • 將我們的程式碼推送到 GitHub
  • 利用 GitHub Actions 執行 CI/CD 工作流程
  • 使用 Github Actions 建立 Docker 容器並將其推送到 Google Cloud
  • 在我們的 Python 應用程式中使用 Google Cloud Secrets 管理器
  • 根據需要更新 Github Actions 中的 Secrets
  • 在 Google Cloud Run 上持續部署我們的應用

課程全面改版並於2023年2月15日發布

目標受眾

  • 有一定 Python 經驗的學生
  • 對無伺服器應用程式感興趣的初級 Web 應用程式開發人員
  • 希望釋放基於容器的無伺服器應用程式的強大功能的 AWS Lambda 用戶
  • 任何想要了解有關 Docker 容器和/或無伺服器應用程式的更多資訊的人
  • 希望採用 Google Cloud 來運行其應用程式各個方面的 Web 開發人員
  • 任何對 Knative 或 Kubernetes 感興趣但想從挑戰性較小的地方開始的人
  • DevOps 工程師希望透過 GitHub Actions 更了解 Google Cloud 的 CI/CD

講師介紹

Justin Mitchel 編碼企業家和教師 – 568,000 多名學生

這一切都始於一個想法。我想要自由……非常渴望。擺脫工作的自由,擺脫無聊的自由,最重要的是,選擇的自由。這個簡單的想法逐漸定義-讓我想成為一名企業家。

當我努力獲得自由時,隨著時間的推移,我意識到,無論你做什麼,你要么(1)以某種方式說服某人和你一起做,要么(2)弄清楚如何自己做。

由於缺乏經濟資源(可能也缺乏說服人們免費做高品質工作的能力),我決定學習。然後再學習一些。然後還有一些。我學習網站設計的道路很早以前就開始了。是的,這是出於需要而不是慾望。我相信我需要為我創辦的公司建立一個網站。所以我學會了怎麼做。就算沒創業成功,我的技能仍然繼續存在……只會越來越好。

在學習網頁設計(html/css)後,我花了一段時間才真正開始學習程式設計(Web 應用程式、儲存「資料」、使用者登入等)。我對 WordPress 進行了修改,相信它可能是一個「用戶」網站,但我錯了。當然有一些駭客可以做到這一點,但它們只是駭客/變通辦法,根本不是 wordpress 的初衷。 WordPress 適用於部落格/內容,乾淨俐落。

我想要更多。我有一個網路應用程式的想法,我認為它會改變餐廳僱用服務人員的方式。我用我的基本 html/css 技能對其進行了測試,並得到了很好的初步結果,並因此找到了一位技術(程式設計師)聯合創始人。他太棒了。我們上了 CNN 的專題報導。事情看起來很棒。

直到…現金流不再流動,生意?我想並沒有-更像是一種狂熱的嗜好。我們有創業的想法,但事實沒有創業。當然,我的夥伴必須找其收入來源,所以我只能自己想辦法。

記住我說過我們所做的一切都有兩個選擇。好吧,我嘗試了令人信服的方法。現在是時候嘗試學習了。我選擇了學習,從那時起就沒有回頭。我幾乎嘗試了所有語言:PHP、Ruby on Rails、SQL、Objective C、C++、Java、Javascript – 我迷路了。

然後,我嘗試了Python – 我被迷住了。太容易了、很簡單,如此優雅。

然後,我嘗試了Django – 更讓人著迷了。由 Python 製成,專為網頁應用程式而設計。它為 Instagram 和 Pinterest(目前最熱門的兩個網頁應用程式?)提供支援。

然後,我嘗試了 Bootstrap。簡單易用的前端設計(html 和 css)非常易於使用,適合行動設備,總體而言……令人難以置信。

Python、Django 和 Bootstrap 正在真正改變世界建立 Web 應用程式的方式。我相信這是因為學習簡單,背後的強大力量,最重要的是,有大量的資源可以幫助任何人建立他們的網路專案(從套件到教程到問答網站)。

我用我新發現的技能重新啟動了我原來的事業。這還不夠。我不再覺得被強迫了。我開始想像我一直想實現的所有想法的所有可能性。現在我可以了。從哪一個開始呢?有很多好主意…
然後另一個想法,一個新的想法開始醞釀。我開始相信學習這些技能的力量。如果其他非技術企業家可以學習,這代表什麼?假使在接觸受追捧的程式設計師之前,想法可先快速執行,收入模式得到驗證,這意味著什麼?如果人們可在成為企業家前先做程式設計師,這意味著什麼?

因此,企業家編碼( Coding For Entrepreneurs )誕生了。

以下是一些我的經歷亮點:

  • 南加州大學馬歇爾商學院勞埃德‧格雷夫創業研究中心創業學兼任教授
  • Udemy 上最暢銷的講師
  • 在 Kickstarter 上獲得資助的創作者
  • 企業家編碼創辦人
  • Backer Radio 聯合主持人

英文字幕:有

想要了解如何將英文字幕自動翻譯成中文? 請參考這篇 How-To


  • Udemy 永久擁有課程 特價中 NT310 起(點擊連結看更多)
  • 年訂閱每月 NT350 🌈 悠遊 Udemy 的 26000+ 門課,最大化學習 ( 原價 NT635/月 )
  • Udemy 現在越來越多課程有中文字幕,請參考 Soft & Share 中文線上課程
  • 手機上點選優惠連結看到的價格比電腦上看到的貴
  • $代表當地貨幣, 如在台灣為 NT
  • 點選”報名參加課程”有可能因瀏覽器 cookies 轉久一點或回報錯誤而無法連上,請稍等刷新或重新點選就會出現

報名參加課程

Sponsored by Udemy


也許你會有興趣

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料

由 WordPress.com 建置.

Up ↑

探索更多來自 Soft & Share 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading