Mysql, nginx, php в Docker?

Здравсвуйте!

Заинтересовался тут докером не на шутку. А щас проект подворачивается сайтика с выской нагрузкой. Вот думаю намутить все на докере. Помнится раньше во freebsd клетки были, уж очень нравилось мне :).

Данные для сайтов и базы мускуля думаю подключать через volumes . Кто реально пользовался подскажите все ли в порядке? А то начитался негативности в инете, теперь вот думаю...
  • Вопрос задан
  • 2167 просмотров
Решения вопроса 2
@stul5tul
А щас проект подворачивается сайтика с выской нагрузкой. Вот думаю намутить все на докере.


Не связанные вещи - Docker и сайты с высокой нагрузкой. Они - параллельны.

Для высокой нагрузки используются кластера серверов, а в этих кластерах ПО зачастую делится на мелкие части - микросервисы. Для управления кластерами с микросервисами используют ПО для управления кластерами.

Такое ПО: из универсального, но громоздкого рекомендую Kubernetes, из попроще, но достаточно функционально рекомендую Flynn.io. Для разработки для имитации поведения в кластере годится docker-compose, но использовать docker-compose в production для реализации кластера - это быть самому себе злым Буратино.

В этом ПО по управлению кластерами для упрощения разработки/эксплуатации, для гарантированности идентичной среды исполнения и используется на одном из низких уровне - Docker, как правило.

То есть Docker сам по себе не решает проблему высоконагруженных сайтов. Он - всего лишь один из базовых кирпичиков изоляции. Изоляция != высокие нагрузки.

  1. Более того - самого Docker не достаточно для реализации системы для работы под высокими нагрузки.
  2. И напротив - система для работы под высокими нагрузками может быть без Docker.

Помнится раньше во freebsd клетки были, уж очень нравилось мне :).

Они и сейчас никуда не делись. И развиваются.

===============================

Делать всю систему вручную на Docker - это напрасно.

Организовать отказоустойчивый распределенный кластер масштабирующийся по большому количеству серверов, следить за здоровьем этого кластера, перезапускать после сбоев и т.п. - это огромный труд.

На этой ниве подвязались целые специализированные конторы по созданию/обслуживанию ПО для этих кластеров. И они пилят свои системы годами.
На коленке - не замутить полноценную систему.

Просто взять это ПО и работать с ним.

И да, оно будет на базе Docker, но это будет далеко не голый Docker.

Для начинающих рекомендую довольно простую в понимании (типа Heroku), но при этом мощную систему, позволяющую сделать полноценный кластер - Flynn.io.

Полагаю, большая часть ваших вопросов уже описана в документации к этой системе.

А без кластера - никакая это не высоконагруженная система. Да и Docker там нужен постольку-поскольку. Если у вас один-два сервера, то вполне можно обойтись и Vagrant на машине разработчика для имитации среды исполнения сервера.
Ответ написан
@mureevms
Мой опыт разворачивания LEMP в Docker
Концептуально все в порядке, это общемировой подход.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@UPSA
anykey. Я не программист, я просто ленивый.
Докер вещь интересная. Заниматься стоит.
1. Почитай. .... ссылка. Клонировать что то не получается ))).
2. Когда то проблема была с резервным копированием докера... если там стоит СУБД. Притом был чистый dev, посмотреть что как работает, испорчу что нибудь, быстро верну. Не получилось ))). Надо полностью останавливать докер и потом делать резервную копию. Но это было давно.
Ответ написан
Ваш ответ на вопрос

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

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