Как правильно устанавливать что-либо в Docker контейнеры?
Уважаемые знатоки, подскажите, как правильно "обустраивать" контейнер если он не подходит в первозданном виде.
Допустим, для примера, на VPS (Debian/Ubuntu) нужно запустить некоторый скрипт на Python определенной версии (на месте Python может быть PHP, Node.js или вообще что угодно).
Создаём контейнер из официального образа Python этой версии, но запустить скрипт не получится, ведь почти для любого проекта как минимум нужно устанавливать пакеты, их зависимости и тд. и тп.
Как всё это устанавливать?
1) Входить в контейнер, запускать там консоль и что-то устанавливать? Как-то не выглядит правильным решением.
2) Создавать свой Dockerfile? Показалось сложноватым для новичка, и вроде бы банальной задачи.
3) Изучать и использовать Docker-Compose?
4) Другие варианты?
Если понадобится более 1 раза, то №2. Там несложно: всего 2 инструкции: FROM (имя исходного образа), и RUN и там как в bash файле команды apt-get update && apt-get install XXX && ...