Запуск безголового хрома в Docker внезапно вылетает

Мы проводим какое-то испытание на хром без хрома. Как и все остальное, мы запускаем все внутри Docker. Теперь, на пару дней, хром неожиданно падает на моей машине (Ubuntu 19.04):

Вот минимальный Dockerfile для демонстрации:

FROM debian

RUN apt-get update && apt-get install -y --no-install-recommends chromium
CMD chromium --headless --verbose --no-sandbox --screenshot https://www.chromestatus.com

Выполнить sudo docker build . -t headless-chrome-crash; sudo docker run headless-chrome-crash

Поскольку это проходит на Mac моего коллеги и Circle CI, единственными вариантами выбора были Docker, ОС и производительность машины. А с помощью AWS я смог сузить его до Ubuntu 19.04, , поскольку он проходит 18.04! в течение длительного времени.

Полная ошибка довольно длинная, ( см. Здесь ), но вот первая часть:

[0918/134957.717636:ERROR:viz_main_impl.cc(170)] Exiting GPU process due to errors during initialization
[0918/134957.723472:WARNING:gpu_process_host.cc(1188)] The GPU process has crashed 1 time(s)
[0918/134957.824829:FATAL:sandbox_linux.cc(382)] Check failed: !HasOpenDirectories(). InitializeSandbox() called after unexpected directories have been opened. This breaks the security of the setuid sandbox.
#0 0x55d058895449 <unknown>
#1 0x55d0587e3d36 <unknown>
#2 0x55d0587fbd14 <unknown>
#3 0x55d059a053d4 <unknown>
....

На других машинах она создает screenshot.png и выглядит как это:

[0918/120635.809655:WARNING:ipc_message_attachment_set.cc(49)] MessageAttachmentSet destroyed with unconsumed attachments: 0/1
[0918/120635.809580:WARNING:ipc_message_attachment_set.cc(49)] MessageAttachmentSet destroyed with unconsumed attachments: 0/1
[0918/120635.809768:ERROR:command_buffer_proxy_impl.cc(126)] ContextResult::kTransientFailure: Failed to send GpuChannelMsg_CreateCommandBuffer.
[0918/120636.611712:INFO:headless_shell.cc(572)] Written to file screenshot.png.
[0918/120636.621106:ERROR:browser_process_sub_thread.cc(203)] Waited 5 ms for network service

Версия Docker:

Docker version 19.03.2, build 6a30dfc
1
задан 18 September 2019 в 17:12

1 ответ

Понижение ядра к 4.18.0-25-универсальному решает проблему. Кажется, несовместимость между Докером и Ядром 5.0.0.

0
ответ дан 7 December 2019 в 18:43