← 作品集

案例研究 03 · 開源專案

TickBoard

透過 Docker 與 GitOps 交付的全端任務看板。

使用 React、Gin 與 MongoDB 建置任務看板,以 Docker 執行服務,提供 Swagger API,並可選擇透過 Nginx 啟用 HTTPS。

ReactGo / GinMongoDBDockerTerraformKubernetesArgo CD

工程挑戰

當一個小型應用程式同時記錄程式碼、交付流程、執行邊界與營運行為時,它也能成為完整的平台工程練習。TickBoard 提供一個具體的全端工作負載,用來實作容器化、API 設計、基礎設施佈建與 GitOps 交付。

架構與設計

  • 使用 React 前端與 Go/Gin API,將服務拆分為可獨立部署的元件。
  • 以 MongoDB 儲存應用程式資料,並提供 Swagger 文件化 API 供檢視與整合。
  • 使用 Docker Compose 支援本機開發,並記錄 Terraform、Kubernetes 與 Argo CD 的叢集交付流程。
  • 在邊界使用 Nginx 提供 HTTPS,並明確路由前端、API 與資料庫管理路徑。
應用程式交付流程
  1. 01React 前端
  2. 02Gin API
  3. 03MongoDB
  4. 04容器服務堆疊
  5. 05Kubernetes/GitOps 交付

實作內容

  • 在 React 與 Gin 服務中實作任務、使用者、註冊與驗證流程。
  • 加入 JWT 驗證、Swagger 文件、健康檢查與 Docker 本機開發環境。
  • 記錄 Terraform 基礎設施、Kubernetes manifest、Kustomize overlay 與 Argo CD 應用程式同步流程。
  • 說明營運邊界,並明確標示開發環境的儲存與密鑰處理取捨。

驗證與影響

  • 專案文件記錄本機啟動、API 健康檢查、Swagger 與正式環境反向代理檢查方式。
  • 本專案定位為可展示的應用程式與交付練習,沒有宣稱正式環境可用性或服務等級成果。

限制與後續工作

  • 文件中的 MongoDB 使用 emptyDir,屬於開發環境設定;正式環境應改用持久化儲存。
  • 密鑰、映像發布、Ingress 與叢集驗收仍需依實際環境設定與驗證。
  • 專案規模較小,因此作品集價值主要來自端到端交付流程,而不是應用程式本身的複雜度。