Кто-нибудь может помочь?
У меня есть 2 x sh (bash) сценария.
сценарий 1 постоянно выводит на STDOUT, то есть его блокировку.
Сценарий 2 вызывает службу, запускающую сценарий 1.
Так что, если я запускаю сценарий 1 - сценарий 2 никогда не запускается, а если я запускаю сценарий 2, он не будет работать, поскольку сценарий 1 не запущен.
Я думаю, что мне нужен способ запуска 2 процессов в моем dockerfile.
После работы сценарий 1 продолжит выполнять вывод в STDOUT - я продолжаю блокировать
скрипт 2 после запуска завершится.
В моем dockerfile у меня есть это, но я просто не могу заставить его работать
CMD ["sh","-c","./startme.sh","./additems.sh"]
Я также попробовал
. / Startup. sh && ./additems.sh - но поскольку запуск блокируется, аддитемы никогда не запускаются.
Аддитемы (сценарий 2) недолговечны, они будут выполнять свою работу и в конце концов, выход, очевидно, это зависит от запуска script1 (запуска).
Я думал, что это как-то связано с передачей - c до sh - но, похоже, ничего не работает
Есть идеи?
Заранее спасибо
ОБНОВЛЕНИЕ
После некоторой справки, приведенной ниже, у меня есть следующее
вот сценарий запуска
#!/bin/bash
set -e
./start-console.sh &
./additems.sh
exec "$@"
Два сценария x на самом деле работают параллельно, что является хорошей новостью, на самом деле даже дополнения после небольшой паузы удается запустить то, что ему нужно, что я добавил, чтобы разрешить завершению загрузки первого скрипта sh, т.е.
sleep 15
Так что script1 (start-console) занят выводом в STDOUT - все работает нормально
Script2 запускается одновременно, тоже хорошо, ждет 15 секунд и успешно выполняет свою команду, но затем он завершается и весь контейнер завершается ..
, если вы заметили в основной сценарий запуска, который у меня есть
exec "$@"
Что, я думал, должен был держать контейнер открытым?