Как правильно использовать Docker для выполнения Python файла?
Посмотрите здесь: https://hub.docker.com/_/python/
Если в двух словах, то вы можете:
1. Создать свой образ, основанный на выбранной версии пайтона с установленными нужными вашему скрипту зависимостями и запустить контейнер с примонтированным скриптом.
2. Или собрать новый образ просто добавив в него скрипт. Так как зависимости уже были добавлены до этого, то  шаг установки зависимостей докер пропустит и новый образ будет готов практически моментально.
Пример образа:FROM python:3-alpine
WORKDIR /usr/src/app
COPY requirements.txt ./
RUN pip install --no-cache-dir -r requirements.txt
Пример запуска скрипта:docker build -t docker-test .
docker run -it --rm --name my-running-script -v ${PWD}:/usr/src/app docker-test python your-daemon-or-script.py
1. Делаем контейнер на образе нужной версии python.
2. "Заходим" в него. 
3. Устанавливаем нужные пакеты через pip.
4. Делаем pip freeze.
5. Копируем вывод во внешний requirements.txt
6. Выходим из контейнера.
7. Прописываем в докер файл копирование файла requirements.txt в контейнер.
8. Прописываем в докер файл команду установки зависимостей через pip из requirements.txt
9. Билдим контейнер по новой.
10. Для запуска контейнера добавляем связь внешней папки с папкой в контейнере через монтирование.
11. Запускаем контейнер.
12. "Заходим" в контейнер.
13. Правим код во внешней папке и запускаем его в контейнере ручками.
Добились, что код рабочий. Теперь можно создать имадж с приложением. Для этого правим докер файл для добавления копирования кода из папки в контейнер и запуска приложения. Билдим и тестируем имадж через создание контейнера. Заливаем имадж в докер репозиторий. На основе имаджа запускаем контейнер на внешнем хосте. "Грустим", что всё закончилось.