什麼是 Docker Compose?
說明
如果您一直按照指南操作到目前為止,您一直在使用單容器應用程式。但是,現在您想要做更複雜的事情 - 執行資料庫、訊息佇列、快取或各種其他服務。您是否將所有東西都安裝在單個容器中?執行多個容器?如果執行多個容器,您如何將它們全部連接在一起?
容器的最佳實務之一是每個容器應該做一件事情並且把它做好。雖然此規則有例外,但應避免讓一個容器執行多項任務的傾向。
您可以使用多個 docker run
命令來啟動多個容器。但是,您很快就會意識到您需要管理網路、將容器連接到這些網路所需的所有旗標等等。而且當您完成時,清理工作會稍微複雜一些。
使用 Docker Compose,您可以在單個 YAML 檔案中定義所有容器及其配置。如果您將此檔案包含在程式碼儲存庫中,任何複製您的儲存庫的人都可以使用單個命令啟動並執行。
瞭解 Compose 是一個宣告式工具非常重要 - 您只需定義它即可開始使用。您並非總是需要從頭開始重新建立所有內容。如果您進行更改,請再次執行 docker compose up
,Compose 將協調檔案中的更改並 هوشمند地套用它們。
Dockerfile 與 Compose 檔案
Dockerfile 提供建構容器映像檔的說明,而 Compose 檔案定義您正在執行的容器。通常,Compose 檔案會參考 Dockerfile 來建構用於特定服務的映像檔。
試用看看
在此實作中,您將學習如何使用 Docker Compose 來執行多容器應用程式。您將使用以 Node.js 建構的簡單待辦事項應用程式,並使用 MySQL 作為資料庫伺服器。
啟動應用程式
按照說明在您的系統上執行待辦事項應用程式。