From ef5bc07fb31c9e46f4f41f6cf905e95ff23428c0 Mon Sep 17 00:00:00 2001 From: Dawid Makowski Date: Tue, 18 Jul 2023 19:18:24 +0200 Subject: [PATCH] Adding support for poppler-utils --- .env.example | 4 +++ DOCUMENTATION/content/documentation/index.md | 35 ++++++++++++++++++++ docker-compose.yml | 4 +++ laravel-horizon/Dockerfile | 10 ++++++ php-fpm/Dockerfile | 10 ++++++ php-worker/Dockerfile | 11 ++++++ workspace/Dockerfile | 11 ++++++ 7 files changed, 85 insertions(+) diff --git a/.env.example b/.env.example index e38286ac..02c52e9b 100644 --- a/.env.example +++ b/.env.example @@ -123,6 +123,7 @@ WORKSPACE_INSTALL_NPM_BOWER=false WORKSPACE_INSTALL_NPM_VUE_CLI=true WORKSPACE_INSTALL_NPM_ANGULAR_CLI=false WORKSPACE_INSTALL_NPM_CHECK_UPDATES_CLI=false +WORKSPACE_INSTALL_POPPLER_UTILS=false WORKSPACE_INSTALL_PHPREDIS=true WORKSPACE_INSTALL_WORKSPACE_SSH=false WORKSPACE_INSTALL_SUBVERSION=false @@ -290,6 +291,7 @@ PHP_FPM_DEFAULT_LOCALE=POSIX PHP_FPM_XDEBUG_PORT=9000 PHP_FPM_INSTALL_EVENT=false PHP_FPM_INSTALL_DNSUTILS=true +PHP_FPM_INSTALL_POPPLER_UTILS=false PHP_FPM_PUID=1000 PHP_FPM_PGID=1000 @@ -336,6 +338,7 @@ PHP_WORKER_INSTALL_XMLRPC=false PHP_WORKER_INSTALL_SSDB=false PHP_WORKER_INSTALL_EVENT=false PHP_WORKER_INSTALL_INTL=true +PHP_WORKER_INSTALL_POPPLER_UTILS=false PHP_WORKER_PUID=1000 PHP_WORKER_PGID=1000 @@ -377,6 +380,7 @@ LARAVEL_HORIZON_INSTALL_MONGO=false LARAVEL_HORIZON_INSTALL_CASSANDRA=false LARAVEL_HORIZON_INSTALL_FFMPEG=false LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM=false +LARAVEL_HORIZON_INSTALL_POPPLER_UTILS=false LARAVEL_HORIZON_PGID=1000 LARAVEL_HORIZON_PUID=1000 diff --git a/DOCUMENTATION/content/documentation/index.md b/DOCUMENTATION/content/documentation/index.md index 21818363..d7e15c69 100644 --- a/DOCUMENTATION/content/documentation/index.md +++ b/DOCUMENTATION/content/documentation/index.md @@ -1999,6 +1999,41 @@ To install npm-check-updates CLI [here](https://www.npmjs.com/package/npm-check- 4 - Re-build the container `docker-compose build workspace` +
+ +## Install poppler-utils + +Poppler is a PDF rendering library based on Xpdf PDF viewer. + +This package contains command line utilities (based on Poppler) for getting information of PDF documents, convert them to other formats, or manipulate them: +* pdfdetach -- lists or extracts embedded files (attachments) +* pdffonts -- font analyzer +* pdfimages -- image extractor +* pdfinfo -- document information +* pdfseparate -- page extraction tool +* pdfsig -- verifies digital signatures +* pdftocairo -- PDF to PNG/JPEG/PDF/PS/EPS/SVG converter using Cairo +* pdftohtml -- PDF to HTML converter +* pdftoppm -- PDF to PPM/PNG/JPEG image converter +* pdftops -- PDF to PostScript (PS) converter +* pdftotext -- text extraction +* pdfunite -- document merging tool + +To install `poppler-utils` [(more here)](https://packages.debian.org/sid/poppler-utils) in any of the `workspace/php-fpm/php-worker/laravel-horizon` container + +1 - Open the `.env` file + +2 - Search for the `WORKSPACE_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true` + +3 - Search for the `PHP_FPM_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true` + +4 - Search for the `PHP_WORKER_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true` + +5 - Search for the `LARAVEL_HORIZON_INSTALL_POPPLER_UTILS` argument under the Workspace Container and set it to `true` + +6 - Re-build the container `docker-compose build workspace php-fpm php-worker laravel-horizon` + +
diff --git a/docker-compose.yml b/docker-compose.yml index 5e14a3ec..a6934304 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -177,6 +177,7 @@ services: - INSTALL_MEMCACHED=${WORKSPACE_INSTALL_MEMCACHED} - INSTALL_EVENT=${WORKSPACE_INSTALL_EVENT} - INSTALL_DNSUTILS=${WORKSPACE_INSTALL_DNSUTILS} + - INSTALL_POPPLER_UTILS=${WORKSPACE_INSTALL_POPPLER_UTILS} - http_proxy - https_proxy - no_proxy @@ -295,6 +296,7 @@ services: - PHP_FPM_NEW_RELIC_APP_NAME=${PHP_FPM_NEW_RELIC_APP_NAME} - INSTALL_DOCKER_CLIENT=${PHP_FPM_INSTALL_DOCKER_CLIENT} - INSTALL_DNSUTILS=${PHP_FPM_INSTALL_DNSUTILS} + - INSTALL_POPPLER_UTILS=${PHP_FPM_INSTALL_POPPLER_UTILS} - http_proxy - https_proxy - no_proxy @@ -360,6 +362,7 @@ services: - INSTALL_SSDB=${PHP_WORKER_INSTALL_SSDB} - INSTALL_EVENT=${PHP_WORKER_INSTALL_EVENT} - INSTALL_INTL=${PHP_WORKER_INSTALL_INTL} + - INSTALL_POPPLER_UTILS=${PHP_WORKER_INSTALL_POPPLER_UTILS} - PUID=${PHP_WORKER_PUID} - PGID=${PHP_WORKER_PGID} - IMAGEMAGICK_VERSION=${PHP_WORKER_IMAGEMAGICK_VERSION} @@ -396,6 +399,7 @@ services: - INSTALL_MONGO=${LARAVEL_HORIZON_INSTALL_MONGO} - INSTALL_FFMPEG=${LARAVEL_HORIZON_INSTALL_FFMPEG} - INSTALL_AUDIOWAVEFORM=${LARAVEL_HORIZON_INSTALL_AUDIOWAVEFORM} + - INSTALL_POPPLER_UTILS=${LARAVEL_HORIZON_INSTALL_POPPLER_UTILS} - PUID=${LARAVEL_HORIZON_PUID} - PGID=${LARAVEL_HORIZON_PGID} - IMAGEMAGICK_VERSION=${LARAVEL_HORIZON_IMAGEMAGICK_VERSION} diff --git a/laravel-horizon/Dockerfile b/laravel-horizon/Dockerfile index 3e47689e..66bfc87b 100644 --- a/laravel-horizon/Dockerfile +++ b/laravel-horizon/Dockerfile @@ -210,6 +210,16 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ && make install \ ;fi +##################################### +# poppler-utils: +##################################### +USER root + +ARG INSTALL_POPPLER_UTILS=false + +RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \ + apk add --update --no-cache poppler-utils \ +;fi # Install Cassandra drivers: ARG INSTALL_CASSANDRA=false diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile index 2ea04eb7..fa815f23 100644 --- a/php-fpm/Dockerfile +++ b/php-fpm/Dockerfile @@ -1036,6 +1036,16 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ && make install \ ;fi +##################################### +# poppler-utils: +##################################### +USER root + +ARG INSTALL_POPPLER_UTILS=false + +RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \ + apt-get -y install poppler-utils \ +;fi ##################################### # wkhtmltopdf: diff --git a/php-worker/Dockerfile b/php-worker/Dockerfile index d34dd4d7..13edf39d 100644 --- a/php-worker/Dockerfile +++ b/php-worker/Dockerfile @@ -263,6 +263,17 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ && make install \ ;fi +##################################### +# poppler-utils: +##################################### +USER root + +ARG INSTALL_POPPLER_UTILS=false + +RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \ + apk add --update --no-cache poppler-utils \ +;fi + # Install AMQP: ARG INSTALL_AMQP=false diff --git a/workspace/Dockerfile b/workspace/Dockerfile index 239ee401..46a8d413 100644 --- a/workspace/Dockerfile +++ b/workspace/Dockerfile @@ -1481,6 +1481,17 @@ RUN if [ ${INSTALL_AUDIOWAVEFORM} = true ]; then \ && make install \ ;fi +##################################### +# poppler-utils: +##################################### +USER root + +ARG INSTALL_POPPLER_UTILS=false + +RUN if [ ${INSTALL_POPPLER_UTILS} = true ]; then \ + apt-get -y install poppler-utils \ +;fi + ##################################### # wkhtmltopdf: #####################################