Почему когда используют Docker для поднятия окружения, создают по контейнеру на каждый сервис а не всё в одном контейнере?
Вы совсем не понимаете Докер. У него основная концепция - один сервис/приложение - независимое окружение.
Для чего это сделано? Прежде всего безопасность и облегчение развертывания приложения.
Любой администратор линукс (ну и других) систем знает, какого это поддерживать сервер одновременно в актуальном состоянии и нужные версии ПО, библиотеки которых часто между собой конфликтуют, нужно проводить танцы в бубном для того чтобы нужные библиотеки были там те, в другом месте другие. Далее возня с правами, кто под кем запускается, что может, дыры в самом ПО, когда из-за этого будет угроза другим частям системы. Ну и простота настройки, одним одни параметры, другим другие.
Докер позволяет решить эти и кучу других проблем, каждый докер образ это грубо говоря максимально минимизированный образ ОС с установкой только необходим библиотек для конкретного сервиса (например mysql), запускается независимо. Таким образом у себя на сервисе вы имеете возможно спокойно, без затрат умственных ресурсов поднять кучу версий например mysql или php. Да и просто разные программы/сервисы которые могут с друг другом конфликтовать, теперь не будут мешать.
У вас есть свои заготовки образов, либо вы берете готовый рецепт и работаете.
Далее тестирование/разработка значительно упрощается, так как организовать условия максимально приближенные к боевым теперь легче.
Далее можно создавать проверенные системы развертывания, снова таки каждый образ под свои задачи и тд и тп.
Короче говоря да, у докера есть свои минусы, но одновременно это значительный прогресс и облегчения прежде всего работы которая касается улосноый Devops части в разработки ПО, значительно автоматизируются и упрощаются многие штуки.
Так же советую потратить время и посмотреть запись  введение в Докер от Хекслет Кирилла Мокевнина. Там небольшие проблемы бывают со звуком, сам вебинар 2 часа, но советую потратить время, он именно рассказывает проблематику, которая привела людей к изобретению Докера и этой концепции.
Потому что Docker отвечает за виртуализацию на уровне процессов ОС, то есть отдельных приложений.
Для оркестрации контейнеров используют Kubernetes / Docker Swarm.