Другие упомянули docker logs $container_id
о просмотре вывода приложения. Это всегда было моей первой проверкой.
Затем вы можете запустить, docker inspect $container_id
чтобы просмотреть подробную информацию о состоянии, например:
"State": {
"Status": "exited",
"Running": false,
"Paused": false,
"Restarting": false,
"OOMKilled": false,
"Dead": false,
"Pid": 0,
"ExitCode": 2,
"Error": "",
"StartedAt": "2016-06-28T21:26:53.477229071Z",
"FinishedAt": "2016-06-28T21:26:53.478066987Z"
},
Важная строка - «OOMKilled», которая будет истинной, если вы превысите ограничения памяти контейнера и Docker убьет ваше приложение. Вы также можете найти код выхода, чтобы узнать, определяет ли он причину выхода вашего приложения.
Обратите внимание, это только указывает, убивает ли сам докер ваш процесс, и требует, чтобы вы установили ограничение памяти для вашего контейнера. Вне докера ядро Linux может обмануть ваш процесс, если на самом хосте не хватает памяти. Linux часто записывает в журнал / var / log, когда это происходит. С помощью Docker Desktop в Windows и Mac вы можете настроить память, выделенную для встроенной виртуальной машины Linux, в настройках докера.
docker logs <container-id>
.