Docker - MicroServices - Структура и логика - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь найти и использовать docker для своих будущих проектов (всегда учусь). Мне трудно найти лучшие практики для структурирования моих проектов. Я разработчик веб-приложений. Я использую внутреннюю CMS, поэтому для примера я бы поговорил о Wordpress. На уровне приложения я использую фреймворк symfony.

Мой вопрос о логике c Я должен поставить свои проекты, свои услуги ...

Контекст:

  • Несколько веб-сайтов с Worpdress
  • Несколько служб (Authenti c служба LDAP, служба для отправки SMS, ...) с Synfomy

Я начал с разделения всего (MicroService apache , Микросервис PHP, Микросервис Sql, ...). С балансировкой нагрузки.

docker-allSepaated

Но я думаю, что это было ошибкой, потому что из-за этого мой Wordpress и Symfony стали зависеть от версии MicroService PHP. Мне объяснили, что я должен думать о докерах как о коробке со всем в ней.

Так что, если я правильно понял, каждый docker должен быть полной средой для каждого сервиса. Поэтому я подготовил Docker -композиции (если я правильно понял, Kubernets будет полезен, как только у нас будет 2 сервера). Но с docker - composer у меня одновременно работает много служб. С 2 сайтами и 2 symfony у меня 4 apache, 4 php, 4 sql.

docker-Compose

Даже если логически они взаимосвязаны, я думаю, что я делаю ошибку.

Я хотел бы использовать официальные изображения (Apache, Php, Sql, ...) и создать 1 сущность, которая объединяет их и запускает все как 1 контейнер.

enter image description here

Таким образом, я могу масштабировать веб-сайт при необходимости, но я увижу только 4 "службы", работающих на моем интерфейсе docker. Это похоже на концепцию изображения, но грустно терять понятие докеров (Apache, php, mysql). Я думаю, что здорово иметь возможность изменить docker в моей композиции (например, PHP версия) и перезапустить систему, чтобы увидеть, есть ли проблемы.

Обязан ли я создать образ из docker дистрибутива linux, а затем с установкой dockerfile php, mysql, apache?

РЕДАКТИРОВАТЬ: Или ... docker - composer хорошо для разработчика. Но в производстве вам нужно создать образ с помощью Dockefile ...

Большое спасибо за внимание и помощь! Я надеюсь, что вы и ваши близкие в безопасности.

...