docker-compose.yml文件多个分站问题
伊谢尔伦
伊谢尔伦 2017-04-24 09:11:38
0
1
538

正在摸索用docker运行LNMP环境,有个问题不是很清楚,
假设有两个分站,
aaa.xxxxxxx.com
bbb.xxxxxxx.com
对应有两个project文件夹,分别是project-a,project-b,
两个文件夹中分别有自己的docker-compose.yml文件,里面分别定义了nginx+php+mysql的一些东西。
问题:
在两个文件夹中分别执行docker-compose up的时候,nginx+php+mysql是运行了两份,还是一份呢?
如果运行两份,那不是很占空间吗,当有N个分站的时候,那可咋办?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回覆(1)
伊谢尔伦

一個專案目錄中的 docker-compose.yml 对应一套 Nginx + PHP + MySQL。如果你分别在各自目录中 docker-compose up -d 了兩次,那麼這就是兩套。

是的,如果你這麼去分多個站,會浪費大量的記憶體空間,特別是 MySQL,因為有大量的重複。

Docker雖然輕量級,但並不代表可以移除重複記憶體佔用,不會幫你壓縮記憶體空間。

你這樣的做法是絕對的隔離,讓各站直接絕無交叉,從安全性來說很好,但是這種隔離就意味著多重副本。你要考慮是否需要這樣的隔離。

或許你需要不以站點視角來看問題,而是以服務視角看問題。你需要的是3個服務,因此一套docker-compose.yml運行三個服務,Nginx, PHP, MySQL。然後多站點的需求,像傳統伺服器一樣,去設定 nginx 以及 mysql 資料庫即可。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!