Docker compose прекращает печатать стандарт, а затем неожиданно завершает работу - PullRequest
0 голосов
/ 29 августа 2018

Я запускаю две бинарные службы (каждая написана на C ++) через docker-compose 1.22.0. В docker-compose.yml нет ничего особенного. Обе службы используют хост-сеть, имеют init: true, используют user: "0" и имеют большие тома в хост-контейнере, но в остальном их команды в основном работают только с двоичными файлами. (к сожалению, по причинам, связанным с лицензированием программного обеспечения, я не могу дать гораздо больше информации, но больше ничего не знаю)

В некоторых случаях происходит случайное и непоследовательное поведение (я бы сказал, по крайней мере, в 75% случаев, оно работает нормально), обе службы перестанут печатать на консоль после недоумения, выводя следующее:

first_service_1    | second_service_1   |

first_service_1 окрашен не так, как second_service_1, и они выглядят идентично другим строкам журнала, за исключением того, что между ними нет новой строки.

После этого ничего не печатается. Службы (которые предоставляют службы в портах) будут по-прежнему отвечать на запросы, но они не будут печатать то, что они должны / что они обычно печатают.

Через некоторое время (неясно, сколько именно), first_service прекратит работу так:

my-dockerfiles_first_service_1 exited with code 1

Предполагая, что docker-compose не вызывает выхода (в чем я не уверен, потому что он, по-видимому, в основном падает, только когда не удается распечатать), я мог бы отладить это проще. Я не знаю причин, по которым печать никогда не должна завершаться неудачно или когда-либо печататься строка журнала без новой строки в конце.

Может кто-нибудь посоветовать мне, почему docker compose может печатать эту нечетную строку или полностью прекратить печать?

Средой хоста является Ubuntu 16.04 на aarch64 NVidia TX-2 под управлением L4T 28.2. docker-compose был установлен недавно (в течение последних двух недель) через pip. Docker находится на версии 18.06.0-ce.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...