2015-03-25 4 views
0

Я хотел бы иметь службу RUnit контролировать набор контейнеров, запущенных docker-compose инструментом, вот мой runit сценарий:RUnit не останавливает контейнеры Докер-Compose в

В /etc/sv/app/run

#!/bin/bash 
exec 2>&1 

APP_HOME=/home/myapp 

source $APP_HOME/env.sh 
exec docker-compose -f $APP_HOME/docker-compose.yml up 

Вот что я тогда:

  • sv start app - запускает докер-Compose вещь просто отлично
  • sv stop app - останавливает докер-процесс создания сообщения самого , но по неизвестной причине он оставляет контейнеры работает

Есть ли шанс иметь stop команду, чтобы остановить контейнеры, а? Я подумал, что это то, что должен делать docker-compose, когда он будет остановлен RUnit.

ответ

0

Я не знаком с докером (пока), но у меня есть знакомство с runit.

Когда вы отправляете sv stop app, вы на самом деле говорите runsvdir, чтобы сообщить runsv для запуска вашего докера, чтобы снести процесс. Если вам нужно что-то, чтобы сигнализировать о закрытии контейнера, это не произойдет, потому что runsv убьет и убьет любые дочерние процессы, которые прилагаются. Возможно, вы захотите прочитать сценарии ./finish, которым поручено очищать вещи.

 Смежные вопросы

  • Нет связанных вопросов^_^