Запуск docker изнутри python скрипт не работает при запуске - PullRequest
0 голосов
/ 14 февраля 2020

Итак, у меня есть простой python скрипт, который запускается при запуске. Этот скрипт в идеале запускает webhook, который затем запускает контейнер docker по полученному запросу POST. Этот скрипт прекрасно работает, когда я его запускаю, но когда я помещаю его в свой crontab, он вдруг не работает, и я не могу полностью понять, почему. У меня есть сценарий для установки сообщения на стене после получения успешного метода post, так что я знаю, что это не проблема, так как я прекрасно вижу сообщение на стене, когда отправляю сообщение POST. Похоже, что он фактически не запускает контейнер, независимо от того, говорю ли я, чтобы он работал в фоновом режиме, обычно с subprocess.Popen или subprocess.call, с оболочкой true или false.

        subprocess.call(["echo PULLING APP | wall"], shell=True)
        subprocess.call([". [pathtoscript], shell=True)

Это выдержка из .py. Может быть несколько полезно отметить, что я не тестирую сценарий до полной загрузки компьютера, чтобы убедиться, что я не запускаю его до запуска службы docker или чего-то в этом роде. Сценарий:

#!/bin/sh
docker run --name [app] -p 80:80 --rm --mount type=bind,source=/home/dev/mongodb.pass,target=/app/mongodb.pass [pathtoimage]

1 Ответ

0 голосов
/ 14 февраля 2020

Хорошо, похоже, я решил проблему, обеспечив абсолютный путь к docker внутри сценария оболочки, используя which docker

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...