Я работаю над проектом Symfony, который использует Browsershot для экспорта страницы в PDF. Экспорт работает нормально на сервере, но когда я пытаюсь заставить его работать локально в контейнере Docker, многие ресурсы (изображения, CSS и т. Д.) В PDF отсутствуют, и, следовательно, компоновка неверна.
Итак, чтобы устранить ее, я хотел бы получить доступ к журналам консоли и ошибкам экземпляра безголового хрома, который создается кукловодом и вызывается браузером.
У кого-нибудь есть опыт с этим? Возможно ли это, или у безголового Chrome просто нет таких инструментов разработки? Я ничего не мог найти в Интернете, но, возможно, кто-то пробовал это раньше.
Заранее большое спасибо!
Вот как Browsershot вызывается внутри проекта:
Browsershot::html($htmlContent)
->noSandbox()
->showBrowserHeaderAndFooter()
->waitUntilNetworkIdle()
->headerHtml('<p></p>')
->footerHtml($this->getFooter())
->showBackground()
->emulateMedia('screen')
->landscape()
->paperSize(210, 297)
->margins(10, 10, 10, 10)
->windowSize(1200, 850)
->save($temp);
и я устанавливаю кукловод в Dockerfile следующим образом:
RUN curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - && \
sudo apt-get install -y nodejs gconf-service libasound2 libatk1.0-0 libc6 libcairo2 libcups2 libdbus-1-3 libexpat1 libfontconfig1 libgcc1 libgconf-2-4 libgdk-pixbuf2.0-0 libglib2.0-0 libgtk-3-0 libnspr4 libpango-1.0-0 libpangocairo-1.0-0 libstdc++6 libx11-6 libx11-xcb1 libxcb1 libxcomposite1 libxcursor1 libxdamage1 libxext6 libxfixes3 libxi6 libxrandr2 libxrender1 libxss1 libxtst6 ca-certificates fonts-liberation libappindicator1 libnss3 lsb-release xdg-utils wget && \
sudo npm install --global --unsafe-perm puppeteer && \
sudo chmod -R o+rx /usr/lib/node_modules/puppeteer/.local-chromium