Linux
Docker:包含 LAMP 的應用程序容器還是僅 LAMP 容器?
我有 20/30 個站點到主機的伺服器,我想使用 Docker 容器來實現可擴展性、可維護性和安全性。
經過幾次搜尋,我發現了兩種方法:
- 每個應用程序一個容器(包括所有容器,例如 LAMP),
- 每個“服務”一個容器,例如 Apache、Mysql 和應用程序。
關於我的目標(20/30 個站點到主機,類似應用程序的重複容器……)我會選擇第一個。作為一個初學者,我徵求意見:什麼是最好的?
感謝您的回答!
尼古拉斯
綠地中的首選解決方案是每個服務有一個容器,因此一個 Apache 容器和一個單獨的 Mysql 容器。由於 Apache 將在大多數 LAMP 堆棧中直接生成並與應用程序通信,因此我不會將它們分開。將這兩個容器放在 docker-compose.yml 定義中,並在專用網路中一起啟動它們(預設使用 docker-compose)。這使每對容器能夠通過容器名稱上的 dns 相互引用,並使升級更容易(您可以只換出 db 容器而無需重建 Web 伺服器)。
該應用程序在載入像 php 這樣的腳本環境時,通常會作為卷安裝在 Apache 容器上。