Я думаю, вам нужно сначала начать изучать основы Docker Compose, а не пытаться прямо погрузиться в развертывание.Это поможет вам понять, как развернуть мультиконтейнерные приложения и какова основная идея.В соответствии с вашим сценарием docker-compose позволяет вам определить ваш контейнер NGINX, Angular JS-контейнер (ваш интерфейс), PHP (ваш сервер) и ваш контейнер MySQL DB, порты, на которых они работают, а также определить оверлейные сети, которые вы используете.может отделить контейнер мудрым.См. Ресурсы ниже, в 3-й ссылке вы также можете посетить файл Docker Compose, который определил те же конфигурации, что и ваши текущие настройки, просто обратитесь к нему после ознакомления с основами.
Docker Compose Официальная документация
Как использовать Docker Compose
Образец файла Docker Compose
Когда он входит вDocker Swarm и Kubernetes - это платформы для оркестровки контейнеров.Оба из них позволяют вам запускать контейнеры в кластерах, что означает, что вы можете реплицировать количество контейнеров, в которых работает каждый сервис (сервис здесь означает один из ваших контейнеров, то есть NGINX Container), чтобы сделать их высокодоступными.Представьте, что один из ваших контейнеров NGINX дает сбой, и вы решили запустить 3 контейнера NGINX в вашем кластере Docker Swarm или Kubernetes, и ваши пользователи не будут затронуты, хотя один из ваших контейнеров NGINX не работает, поскольку работают еще два других контейнера.Между Docker Swarm и Kubernetes есть некоторые различия, и вам решать, какой инструмент использовать после того, как вы правильно освоите эти основы.Если вы начинаете с docker-compose, вход в Docker-Swarm будет немного легким.
Разница между Docker Swarm и Kubernetes
Также я добавил ответ, объясняющий использование Docker Swarm в сценарии, подобном вашему, прочитайте его, чтобы вы могли получить представлениео том, как развернуть приложение с помощью Docker Swarm.
Мой ответ на Docker Swarm Пример использования