Как правило, рекомендуется создать новое изображение, когда у вас есть новый исходный код, и запустить новый контейнер из этого изображения.Docker может быстро создавать и запускать новые образы, поэтому вы должны воспользоваться этим.Кроме того, вы можете узнать, какую версию своего кода вы используете, пометив свои изображения.
Вы упоминаете, что вам нужно будет скомпилировать код Java в случае с Docker, но вам потребуется в любом случае.Вы можете просто скомпилировать свой код в Jar, а затем ДОБАВИТЬ (или скопировать) Jar в свой контейнер и запустить его там.
Пара быстрых недостатков, которые приходят на ум с подходом внешнего кода: вам потребуетсякакой-то внешний способ управления версией кода, за которой позаботятся теги Docker.Вам также понадобится какой-то способ предупредить контейнер Docker о готовности нового исполняемого файла, а затем запустить Docker.Кроме того, вам необходимо убедиться, что ваш контейнер Docker работает на той же версии Java (или Python), на которой работает ваша система, об этом тоже заботятся в Docker, поскольку вы можете создавать из базового образа Java.