Докеризация приложения?
В целом стоит почитать https://12factor.net/ru/  - но это больше концептуальная статья.
Насчет процесса разработки - есть два пути (и, естественно, варианты между ними):
1) разрабатывать и тестировать  по старинке, на своем лаптопе. Когда что-то заработает, запаковать в контейнеры, потом перепаковывать новые версии.
2) И правильный путь - перед тем, как писать код, создать репо в  Git, написать CI скрипты для построения images, deploy, testing, ...
И тогда при каждом commit (или только для PR) CI будет запускать тесты, билдить images, и т.д.
Сделать это не так сложно как было десять лет назад - не надо инсталлировать Jenkins или ему подобные программы,  в GitHub есть GitHub Actions (с бесплатным планом) в котором на YAML описываем что надо сделать при коммите.
Слишком пространный вопрос.
Расскажу на примере небольшого приложения на Django
Итак - у вас должно быть как минимум два контейнера - контейнер с приложением и контейнер с базой.
Для базы берете базовый контейнер postgresql, и делаете маппинг директории в вашей локальной системе в  базовый контейнер postgresql. Таким образом данные хранятся у вас в локальной системе, и пересобирать образ с postgresql - не требуется.
Теперь организация контейнера с Django. Берете базовый контейнер с python3. Делаете маппинг локальной директории с приложением в контейнер. В этой же локальной директории создаете виртуальное окружение python для запуска проекта. Все - пересборки образа также не требуется - используется базовый образ.
Обычно просто стартуете это все с помощью docker-compose. В контейнере с Django просто запускаете стартовый скрипт, который доустанавливает недостающие пакеты в ваше локальное окружение, делает миграции, собирает статику, и собственно запускает uwsgi.
Вот собственно все.
Проект вместе с docker-compose.yml и стартовым скриптом спокойно переносите куда угодно. При запуске автоматически нужные образы скачаются, а стартовый скрипт соберет нужное окружение и запустит проект.