вообще в вашем коде присутствуют чисто линуксовые только две команды баша
set -x что есть по сути дебаг режим - выводит команды которые баш выполняет
set -e стоп скрипта если команду выполнить нельзя
заменять их аналогами или просто выкинуть - решать вам.
Остальное под виндой должно работать, если вы поставите docker desktop для windows
поправить нужно будет:
- переписать пути в командах docker cp на виндовые
- возмжно нужно добавить шареные диски в docker desktop чтобы папки из которых копируете файлы в контейнер были доступны контейнеру (а может быть и не надо, я с docker cp практически не работал)
Альтернатива:
ставим git с git-bash
и запускаем файл без изменений в этой оболочке.
или включаем превью режим в винде и ставим WSL2, включаем в настройках докера использование WSL и работаем через подсистему Windows для Linux
и точно так же без изменений файл используете