я запихиваю пхп, нжинкс, монтирую папку с сайтом как том, и так для каждого сайта?
У меня в гитдабе поднят регистр докера, не обязательно, что некоторые сервисы через volumes прокидывают папки, у меня некоторые сервисы на этапе сборки в ранере зашивают исходники в контейнер. Ну тоест есть исходники, допустим фронт с Ангуляром, делаешь коммит, раннер собирает проект под прод, и билдит docker build -t ..., далее отправляет в реестр, после чего на прод попадает только docker-compose.yml в котором этот image. Стартует его.