Docker compose - запускает команду, когда контейнер корректно останавливается - PullRequest
0 голосов
/ 26 апреля 2018

Я хотел бы запустить команду очистки до полной остановки контейнера.

В моем случае удаление файла pid, созданного службой, которая вызывает проблемы при следующем запуске, если он все еще там. Конечно, я мог бы удалить, если он существует при запуске. Но мне любопытно, если я что-то пропустил в документах.

version: '3'
services:
  server:
    build: ./
    command: bash -c "cd /myapp/ && ./example.sh"

Предположим, example.sh создает файлы и выдает ошибку при следующем запуске, если эти файлы все еще там. Так что что-то вроде следующего будет круто

version: '3'
services:
  server:
    build: ./
    command: bash -c "cd /myapp/ && ./example.sh"
    onstop: bash -c "cd /myapp && rm exampleFile.txt"

Я ожидаю, что команда onstop будет выполнена в течение stop_grace_period после того, как контейнер получил stop_signal.

...