У меня есть 3 контейнера Apache и 1 nginx, работающие на одном сервере, так что я уверен, что это не проблема.
Для каждого стека базы данных веб-сервера + у меня есть свой файл docker-compose, таким образом, docker создаст отдельную сеть для каждого стека, избегая возможных проблем с одновременным портом, и вам нужно будет только связать свой nginx с разными порты вашего сервера, потому что вы можете привязать только один сервис к одному порту. тем не менее, каждый контейнер представляет собой отдельную «машину», поэтому даже в одной сети они могут использовать один и тот же порт.
если вам действительно нужно запустить все ваши службы в портах 80 и 443 вашего сервера, возможно, вам понадобится установить nginx, работающий в этих портах, как обратный прокси-сервер, вызывающий эти сервисы во внутренней сети докеров, - вариант но я никогда не пробовал это раньше по внутренней сети докера.