Вообще, если ты ничего не меняешь в докерах созданных с помощью compose, то просто переносишь на сервер весь compose.yml с зависимостями и разв плачиваешь его там.
А по умолчанию докер, для контейнера берет ту, который заложил создатель контейнера. Ее можно посмотреть в исходном коде, да и это особо не важно. Как правило контейнера поставляются как конечный продукт, а если тонкого для тебя не нашлось, пишешь свой, на той ос которую хочешь и с тем что хочешь внутри.