Я передаю сценарий службы в ENTRYPOINT. Служба запущена, но закрыта. Мне нужно запустить процесс для каждого контейнера, используя служебный скрипт из ENTRYPOINT или CMD. Таким образом, я могу перезагрузить конфигурацию внутри контейнера с помощью служебного скрипта. Я также пробовал с оператором CMD, но он запускает службу, но сразу же существует контейнер.
ENTRYPOINT ["/etc/init.d/elasticsearch", "start"]
Сценарий /etc/init.d/elasticsearch содержит приведенный ниже код для запуска службы в качестве демона.
cd $ES_HOME
echo -n $"Starting $prog: "
daemon --user elasticsearch --pidfile $pidfile $exec -p $pidfile -d
retval=$?
echo
[ $retval -eq 0 ] && touch $lockfile
return $retval
Разве нельзя запустить службу с помощью сценария запуска и сохранить контейнер в рабочем состоянии?
команды, используемые для создания и запуска контейнеров.
docker build -f Dockerfile -t="elk/elasticsearch" .
docker run -d elk/elasticsearch
docker run -it elk/elasticsearch bash
-d
. - person mchawre   schedule 10.07.2019