Я использую pdfbox для создания PDF-файлов на Java. Это отлично работает при работе с моим Mac как обычным Java-приложением. Тем не менее, прецедентом является запуск этого со стороны сервера для создания pdf-файла из веб-браузера.Поколение PDF-контейнера для док-контейнера PDFBox не удается
Я развернул приложение в контейнер докеров и теперь не работает (различные ошибки при загрузке шрифтов - arrayindexoutofbounds, eofexception и т. Д.). Это, по-видимому, связано с тем, как pdfbox работает в режиме java.awt.headless, так как при выводе режима java работает на Mac, он возвращает false для режима безголовья, тогда как возвращает true на сервере.
Я установил значение java.awt.headless=fals
e в свой код и теперь придумал ряд других ошибок. Отсутствие библиотек, относящихся к X-серверу и т.д. Я установил их, но теперь есть ошибка:
java.awt.AWTError: Can't connect to X11 window server using ':0.0' as the value of the DISPLAY variable.
Там есть куча предложений вокруг SO и т.п., например, установка DISPLAY =: 0.0 и т. д., но ни одна из этих функций не работает. Это, очевидно, несколько сложно, работая в контейнере докеров, но может ли кто-нибудь предложить что-то здесь?
Я предполагаю, используя виртуальный XServer ответ, но я озадачен о том, как установить это, а затем установите соответствующий xsessionAuthoriy/DISPLAY/и т.д.
Можете ли вы добавить в свою команду docker '-v /tmp/.X11-unix:/tmp/.X11-unix \ # mount X11 socket', чтобы разъем X11 был установлен как в хосте, так и в контейнере? Это самый простой способ, я думаю. Это извлекается из https://blog.jessfraz.com/post/docker-containers-on-the-desktop/ см. «5. Chrome», например, – user2915097
приятный хак, но не работает. Это предполагает, что /tmp/.X11-unix находится на главной машине, которая, если хост-машина работает без головок (как она будет на производстве), не будет присутствовать ?? – radder5
Проверьте https://linuxmeerkat.wordpress.com/2014/10/17/running-a-gui-application-in-a-docker-container/ или найдите в этом файле Dockerfile безголовный https: //registry.hub.docker .com/и/elgalu/докер-селен/dockerfile / – user2915097