正在摸索用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个分站的时候,那可咋办?
프로젝트 디렉터리의
docker-compose.yml
은 Nginx + PHP + MySQL 집합에 해당합니다. 각 디렉토리에docker-compose up -d
두 번 사용하면 두 세트가 됩니다.네, 이렇게 여러 사이트로 나누면 메모리 공간이 많이 낭비됩니다. 특히 MySQL은 중복이 많아서요.
Docker는 가볍지만 중복된 메모리 사용량을 제거할 수 있고 메모리 공간을 압축하는 데 도움이 되지 않는다는 의미는 아닙니다.
하고 있는 작업은 사이트 간 중복이 없도록 절대 격리하는 것입니다. 보안 측면에서는 좋지만 이 격리는 여러 복사본을 의미합니다. 그러한 격리가 필요한지 여부를 고려해야 합니다.
아마도 사이트 관점이 아닌 서비스 관점에서 문제를 보아야 할 것 같습니다. 필요한 것은 3가지 서비스이므로
docker-compose.yml
세트는 Nginx, PHP 및 MySQL의 3가지 서비스를 실행합니다. 그런 다음 다중 사이트가 필요한 경우 기존 서버처럼 nginx 및 mysql 데이터베이스를 구성하면 됩니다.