使用 GitHub Actions 自動部署 Hexo
這兩天把過去 wiki 的資料全部搬過來了。
The Twelve-Factor App
三十天很快要到了尾聲了,今天要來介紹 The Twelve-Factor App(下稱 12 Factor),它是開發 SaaS 的方法論,適用於 Web 或網路相關服務等軟體開發。怎麼突然討論起如何開發軟體呢?這跟 Docker 好像沒有什麼關係?可能有點奇怪,不過這個開發軟體的方法論,確實跟 Docker 有很大的關係。
更詳細的 Docker 操作方法
到目前為止,介紹了許多操作 Docker 的方法,現在來了解更詳細的操作方法。
要如何在 container 裡運行多個 process
延續 Docker 啟動 process 的主題,因 container 即 process,因此合理的設計方法會是一個 container 只執行一個 process。而且 Dockerfile 也只能設定一個 ENTRYPOINT 和 CMD,實際上也很難跑多個 process。
了解 Docker 如何啟動 process
了解 CMD 與 ENTRYPOINT 曾提到 container 即 process,那接下來就要了解 Docker 是如何啟動 process 的。
活用 ENV 與 ARG
ENV 與 ARG 是 Dockerfile 的指令,它們能定義變數並且在後面的流程中使用。
活用 ENTRYPOINT
ENTRYPOINT 的設計,可以保證 container 啟動執行指令的時候,都一定會包含 ENTRYPOINT 設定。因此可以藉由這個特性讓 image 用起來更靈活。