用 OCI 免費方案部署你的服務
從雲端主機、Docker 到 Cloudflare 與 GitHub Actions,動手建立自己的低成本應用部署環境。
💡 專案完成了,然後呢?
隨著 AI Coding 工具越來越成熟,我們已經能夠更快速地將想法實作成真正的應用程式。但當專案完成後,下一個問題往往是:要把它部署在哪裡,才能讓其他人真正使用?
對於個人開發者、學生或 Side Project 創作者而言,雲端服務的費用可能是一項負擔。即使只是想讓自己的作品公開上線,也需要面對主機、網路、網域與部署流程等問題。
Oracle Cloud Infrastructure(OCI)提供了具有一定免費額度的 Always Free 服務,讓我們有機會利用有限的雲端資源,建立自己的應用部署環境。
這門課將從 OCI 免費層出發,逐步建立雲端主機、部署 Docker 容器化應用,並透過 Cloudflare DNS 與 Tunnel,讓服務能夠從網際網路存取。
除了手動建立雲端資源,我們也會初步接觸 Terraform 與 Infrastructure as Code(IaC),探索如何透過程式碼描述與管理基礎設施。
而當應用需要持續更新時,我們將進一步使用 GitHub Actions,認識 Self-hosted Runner,並建立基本的自動化部署流程,減少每次更新服務時重複操作的步驟。
過程中也會接觸 OCI Object Storage、資料庫服務與相關設定,認識應用在雲端環境中可能需要使用的資源。
我們不追求一次學會所有雲端架構與維運技術,而是希望透過實際操作,理解一個應用從本機開發到雲端上線,需要經過哪些步驟,以及各項服務如何彼此協作。
🎯 這門課你將學到什麼?
- OCI 免費層與雲端資源: 認識 OCI Always Free 的基本服務、免費額度與使用限制,以及 ARM64 環境需要注意的相容性問題。
- 雲端主機與網路設定: 從 Compute Instance、Linux、SSH 到基本網路與防火牆設定,建立能夠執行應用程式的雲端環境。
- Terraform 與基礎設施即程式碼: 初步認識 Infrastructure as Code(IaC),透過 Terraform 了解如何以程式碼描述與建立 OCI 雲端資源,以及相關的基本操作。
- Docker 容器化部署: 使用 Docker 與 Docker Compose 在雲端主機上執行應用,認識容器網路、資料儲存與基本設定方式。
- Cloudflare 與服務公開: 透過 Cloudflare DNS、Tunnel 與相關設定,讓部署在 OCI 上的服務能夠透過網域對外提供存取。
- GitHub Actions 自動化部署: 認識 GitHub-hosted 與 Self-hosted Runner 的差異,實作基本的 CI/CD 工作流程,並了解 Runner 執行環境與部署權限的安全注意事項。
- 雲端資料服務: 認識 OCI Object Storage 與資料庫服務,了解如何將這些雲端資源整合到自己的應用中。
👥 適合對象
- 資訊相關科系學生: 已經完成自己的程式專案,希望嘗試將作品部署到雲端,讓其他人可以實際使用。
- 個人開發者與 Side Project 創作者: 希望以有限預算,建立自己的應用部署環境。
- 後端與全端開發者: 已具備應用程式開發經驗,希望進一步接觸雲端主機、Docker、Terraform 與自動化部署。
- AI 輔助開發使用者: 已經能透過 AI 快速完成應用,希望學習如何將成果從本機部署到公開的雲端環境。
📌 開始之前
建議具備基本的 Linux 指令操作與 Docker 概念,並準備一個可以用來練習部署的應用程式。
課程將以 OCI Always Free 資源為主要實作環境,但免費額度、服務可用性與資源配置可能隨官方政策及區域供應情況改變。部分操作也可能涉及額外費用,因此仍需要留意實際使用的服務與計費設定。
從本機到雲端,讓自己的作品不再只停留在開發環境,而是能真正部署上線,成為可以分享與使用的服務。