@AndersDir

Как правильно содержать несколько сайтов на одном сервере?

Привет! Меня зовут Андрей.

Я занимаюсь веб-разработкой, но знаний в серверной части немного. У меня есть VPS сервер на котором в процессе разработки хостятся различные сайты. Получается есть:
- Папки с сайтами.
- Единая БД.

На выходе имеем проблемы в виде:
- В адресах сайтов порты по типу dev.site.com:2421
- Установлена куча разного софта

Хотелось бы делать все через докер.
В идеале так, что на каждый сайт есть свой docker-compose, в котором все нужное уже есть и чтобы было изолировано.

Я и сейчас могу так сделать, но каждый сайт и каждую его составляющую нужно придумывать свои рандомные порты, чтобы они не пересекались:
- php dev.site.com:2341
- bd dev.dite.com:1234
- redis dev.site.com:5422
и т.д.
Это бесит.

Подскажите, пожалуйста:
- Как можно решить проблему портов? Жить можно и с ними, но кажется это не серьезно. Пользую nginx на базовом уровне.
- Это вообще нормальная структура, когда каждый сайт отдельно со своей бд и прочими сервисами в отдельном каталоге? Или правильнее делать иначе? Например, БД запускать одну для всех и раздавать доступы.

Возможно вообще какие-то другие подходы применяются, я не прав и вообще нужно под каждый сайт отдельный сервер заводить.
  • Вопрос задан
  • 425 просмотров
Пригласить эксперта
Ответы на вопрос 2
SignFinder
@SignFinder
Wintel\Unix Engineer\DevOps
Используйте nginx как reverse proxy либо на самом хосте VDS, либо например через https://github.com/nginx-proxy/nginx-proxy
Тогда порты будут стандартные для всех сайтов - 80 и 433
Ответ написан
Sanes
@Sanes
Для LAMP/LEMP не нужен докер.
Для каждого сайта пул PHP-FPM от отдельного пользователя.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы