Рейтинг:0

Можно ли не буферизовать вывод docker compose при использовании проверки работоспособности?

флаг vn

Повторное введение проверок работоспособности с помощью depend_on в docker compose — это здорово. Серьезно устал писать проверки работоспособности в каждый подчиненный контейнер, особенно в такие вещи, как контейнер инициализации базы данных.

Тем не менее, кажется, что как только я включаю проверку работоспособности/зависит от нее, весь вывод из этих контейнеров буферизуется до тех пор, пока проверка работоспособности не завершится успешно. Хуже — если контейнер по какой-то причине не запускается, вывод проглатывается вообще, и приходится ковыряться с логи докера чтобы получить вывод.

Итак, если у меня есть файл для создания докеров, что-то вроде:

  MySQL:
    изображение: MySQL: 8.0
    ...
    проверка состояния здоровья:
      test: [ "CMD", "mysql", "-u", "имя пользователя", "--password=пароль", "-e", "показать базы данных;" ]
      интервал: 10 с
      тайм-аут: 2 с
      повторы: 8640
      начальный_период: 20 сек.
  ...

  проверка здоровья-проверка:
    изображение: центос:8
    зависит от:
      MySQL:
        условие: service_healthy
    команда: [ "-c", "echo \"mysql up\"" ]
    точка входа: "баш"

Есть ли способ получить вывод контейнера mysql и Health-Check-Check для составления stdout?

  • а) до завершения проверки работоспособности (т. е. без буферизации)
  • б) независимо от успеха/неудачи проверки работоспособности
DrTeeth avatar
флаг vn
Бонусные баллы за вывод результатов проверки работоспособности на стандартный вывод, пока мы этим занимаемся...

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.