iT邦幫忙

鐵人檔案

2025 iThome 鐵人賽
回列表
Software Development

30 天 Python 專案工坊:環境、結構、測試到部署全打通 系列

30 天不談語法、專講工程化:Hatch 環境、pyproject 依賴、測試與型別、FastAPI 六邊形設計、Docker+CI/CD、監控追蹤。結尾交付可 fork 的模板與 Checklist。

參賽天數 29 天 | 共 29 篇文章 | 3 人訂閱 訂閱系列文 RSS系列文 團隊Cyber Edge Runners
DAY 21

Day 21 -背景作業選型:Celery / Dramatiq / asyncio 任務

一句話版本:把慢又不穩的事情踢出請求路徑,用可觀測、可恢復、可替換的背景作業把系統撐住。 為什麼今天要談這個 在 Day 20 我們把 API 層做了 Po...

2025-10-05 ‧ 由 shothead6062 分享
DAY 22

Day 22 -發佈與版本:Hatch build wheel、SemVer、Changelog

專案從「能跑能測」到「能被別人穩定安裝使用」,差的就是發佈這一步。今天把三件事一次補齊: 用 Hatch 建置與發佈套件(wheel、sdist) 以 Sem...

2025-10-06 ‧ 由 shothead6062 分享
DAY 23

Day 23 -容器化最佳實務:多階段 Dockerfile 與非 root 執行

本篇聚焦在「映像瘦身與強化安全」。依舊延續前面章節的專案骨架、依賴鎖定、結構化日誌與 API 分層,但不談 CI/CD(之後再提)。你可以直接把範例放進專案,...

2025-10-07 ‧ 由 shothead6062 分享
DAY 24

Day 24 - 開發體驗:Dev Container / VS Code 與 Hatch scripts

目標:把「專案能跑」升級成「任何人打開就能順順開始寫」。用 Dev Container 鎖住開發環境、VS Code 當入口、Hatch scripts 把雜...

2025-10-08 ‧ 由 shothead6062 分享
DAY 25

Day 25 -CI/CD 範本:GitHub Actions(lint → test → build → publish)

讓每次 PR 與 main push 都跑出同樣的結果(依賴版本一致、同樣的檢查清單)。這靠 uv 的鎖檔與 cache 搭起來。 把一鍵化工作流搬到 CI...

2025-10-09 ‧ 由 shothead6062 分享
DAY 26

Day 26 -安全與授權:pip-audit、Safety、授權掃描

我們要達成什麼 在本地與 CI 以 pip-audit 與 Safety 掃出已知弱點,能產出報告並以非 0 退出碼擋 PR。 建立 授權清單 與 SBOM(...

2025-10-10 ‧ 由 shothead6062 分享
DAY 27

Day 27 -部署選項速覽:Gunicorn/Uvicorn、Cloud Run / K8s

到這裡,我們已經把應用寫完、包好、測過、丟進乾淨的容器。接下來就是你最不想面對但跑不掉的一題:怎麼把它穩定、可觀測、能回滾地丟上線。 今天做三件事: 把 Py...

2025-10-11 ‧ 由 shothead6062 分享
DAY 28

Day 28 -監控與追蹤:OpenTelemetry 指標/追蹤

把服務的「可觀測性」從只有結構化日誌擴展到指標 Metrics與追蹤 Traces。用 OpenTelemetry(OTel)做統一的 SDK、協定與傳輸,搭...

2025-10-12 ‧ 由 shothead6062 分享
DAY 29

ChatGPT 說: Day 29 - Vibe Coding × AI 協作:自動化腳本與守門規則

這天把「人類+AI」接進你已經成形的開發骨架:用一鍵化腳本把 AI 能做的事變成可靠重複的流程,用守門規則擋住 AI 產出的各種翻車現場。所有東西都要能在本地...

2025-10-13 ‧ 由 shothead6062 分享