У меня есть два приложения:Докер - Run Контейнер из Внутри контейнера
- консольный скрипт на Python, который делает короткую (МОГ) задачу и выходит
- колбу, «внешний интерфейс» для запуска консольного приложения, передавая это аргументы командной строки
В настоящее время проект Flask содержит копию сценария консоли и запускает его с использованием subprocess
, когда это необходимо. Это отлично работает в контейнере Docker, но они слишком плотно соединены. Бывают ситуации, когда я хочу запустить консольный скрипт из командной строки.
Я хотел бы разделить два приложения на отдельные контейнеры. Чтобы сделать эту работу, приложение Flask должно иметь возможность запускать консольный скрипт в отдельном контейнере (который может быть на другой машине). В идеале я бы не хотел запускать контейнер консольного скрипта внутри контейнера Flask, так что на один контейнер запускается только один процесс. Кроме того, мне нужно будет передать аргументы командной строки консольного скрипта.
Q: Как я могу породить контейнер с недолговечной задачи внутри контейнера?
Спасибо за ответ. Я сделаю это. Я предполагаю, что это не сработает, если консольный скрипт должен запускаться на другом хосте, поскольку сокет передается из хоста Flask. Как я могу перейти в сокет с другой машины? – user4794170
Самая сложная часть этого процесса - выяснить, как определить этот узел, и, конечно же, убедиться, что хост доступен из контейнера Flask через tcp. Затем контейнеру Flask нужны сертификаты хост-клиента. Это на самом деле звучит как кошмар - есть ли веская причина не просто убедить себя, что они работают на одном и том же хосте? – kojiro