Docker-Swarm

使用持久儲存建構 Docker Swarm

  • October 14, 2017

我在確定我想如何建構我的 Docker Swarm 集群時遇到了一些麻煩。目前它包括:

  • 1 MariaDB,它需要具有適合數據庫的持久儲存。
  • 2 x MediaWiki 伺服器,需要具有適合儲存圖像、影片和其他媒體文件的持久儲存。
  • 基於域名將域名映射到每個 MediaWiki 伺服器的某種入口。

我可以對可能的架構方式提供一些回饋。理想情況下,我希望所有三台伺服器都包含 MediaWiki 應用程序的實例,或者可能是 2 台伺服器和 1 台專用主機伺服器用於數據庫。一個 MediaWiki 應用程序接收的流量大約是另一個應用程序的 20 倍,因此可以在多台機器上執行。

我遇到的麻煩是嘗試在部署之間保留數據。我目前正在考慮使用 CephFS 之類的東西,將塊儲存安裝到一個主機和兩個從屬實例從中複製。

我還沒有探索入口組件,但我假設我可以配置某種 Nginx 伺服器,理想情況下啟用 Lets Encrypt,它將根據傳入域名將流量代理到任一 MediaWiki 主機名,但這可能是一個天真的假設。

您正在使用 ceph 儲存圖像。你注定要失敗。

在 swarm 中執行它,但將您的媒體儲存在像 AWS S3 這樣的塊儲存上。如果您不使用具有 S3 之類的提供程序,請查看

https://minio.io/

它的 API 與 S3 兼容。好處是大多數主要軟體都為 S3 提供了選項。

引用自:https://serverfault.com/questions/878424