From 29ddcccbbaa125fe262c84b591a409170b64743f Mon Sep 17 00:00:00 2001 From: Eike Kettner Date: Wed, 9 Sep 2020 22:59:34 +0200 Subject: [PATCH] Use a base image for joex containing all the tools --- docker/build-joex-base.sh | 6 ++++++ docker/joex-base.dockerfile | 38 +++++++++++++++++++++++++++++++++++++ docker/joex.dockerfile | 33 ++------------------------------ docker/push-images.sh | 15 +++++++++++++++ docker/push-joex-base.sh | 6 ++++++ 5 files changed, 67 insertions(+), 31 deletions(-) create mode 100755 docker/build-joex-base.sh create mode 100644 docker/joex-base.dockerfile create mode 100755 docker/push-images.sh create mode 100755 docker/push-joex-base.sh diff --git a/docker/build-joex-base.sh b/docker/build-joex-base.sh new file mode 100755 index 00000000..03c5dd75 --- /dev/null +++ b/docker/build-joex-base.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e + +docker build -t eikek0/docspell:joex-base-1 -f joex-base.dockerfile . +docker tag eikek0/docspell:joex-base-1 eikek0/docspell:joex-base-latest diff --git a/docker/joex-base.dockerfile b/docker/joex-base.dockerfile new file mode 100644 index 00000000..457bed2c --- /dev/null +++ b/docker/joex-base.dockerfile @@ -0,0 +1,38 @@ +FROM alpine:latest + +ENV UNO_URL https://raw.githubusercontent.com/unoconv/unoconv/0.9.0/unoconv + +LABEL maintainer="eikek0 " + +RUN apk add --no-cache openjdk11-jre \ + unzip \ + bash \ + curl \ + ghostscript \ + tesseract-ocr \ + tesseract-ocr-data-deu \ + unpaper \ + wkhtmltopdf \ + libreoffice \ + ttf-droid-nonlatin \ + ttf-droid \ + ttf-dejavu \ + ttf-freefont \ + ttf-liberation \ + libxml2-dev \ + libxslt-dev \ + pngquant \ + zlib-dev \ + g++ \ + qpdf \ + py3-pip \ + python3-dev \ + libffi-dev\ + qpdf-dev \ + openssl-dev \ + ocrmypdf \ + && pip3 install --upgrade pip \ + && pip3 install ocrmypdf \ + && curl -Ls $UNO_URL -o /usr/local/bin/unoconv \ + && chmod +x /usr/local/bin/unoconv \ + && apk del curl unzip libxml2-dev libxslt-dev zlib-dev g++ python3-dev py3-pip libffi-dev qpdf-dev openssl-dev diff --git a/docker/joex.dockerfile b/docker/joex.dockerfile index 0eb5a2df..abb2d2a3 100644 --- a/docker/joex.dockerfile +++ b/docker/joex.dockerfile @@ -1,6 +1,4 @@ -FROM alpine:latest - -ENV UNO_URL https://raw.githubusercontent.com/unoconv/unoconv/0.9.0/unoconv +FROM eikek0/docspell:joex-base-latest LABEL maintainer="eikek0 " @@ -8,39 +6,12 @@ RUN apk add --no-cache openjdk11-jre \ unzip \ bash \ curl \ - ghostscript \ - tesseract-ocr \ - tesseract-ocr-data-deu \ - unpaper \ - wkhtmltopdf \ - libreoffice \ - ttf-droid-nonlatin \ - ttf-droid \ - ttf-dejavu \ - ttf-freefont \ - ttf-liberation \ - libxml2-dev \ - libxslt-dev \ - pngquant \ - zlib-dev \ - g++ \ - qpdf \ - py3-pip \ - python3-dev \ - libffi-dev\ - qpdf-dev \ - openssl-dev \ - ocrmypdf \ - && pip3 install --upgrade pip \ - && pip3 install ocrmypdf \ - && curl -Ls $UNO_URL -o /usr/local/bin/unoconv \ - && chmod +x /usr/local/bin/unoconv \ && mkdir -p /opt \ && cd /opt \ && curl -L -o docspell.zip https://github.com/eikek/docspell/releases/download/v0.11.1/docspell-joex-0.11.1.zip \ && unzip docspell.zip \ && rm docspell.zip \ - && apk del curl unzip libxml2-dev libxslt-dev zlib-dev g++ python3-dev py3-pip libffi-dev qpdf-dev openssl-dev + && apk del curl unzip COPY entrypoint-joex.sh /opt/entrypoint.sh diff --git a/docker/push-images.sh b/docker/push-images.sh new file mode 100755 index 00000000..9da647f7 --- /dev/null +++ b/docker/push-images.sh @@ -0,0 +1,15 @@ +#!/usr/bin/env bash + +set -e + +# Update the versions in joex.dockerfile and restserver.dockerfile, +# docker-compose.yml and joex/entrypoint.sh; update versions here +docker push eikek0/docspell:joex-0.11.1 +docker push eikek0/docspell:restserver-0.11.1 +docker push eikek0/docspell:consumedir-0.11.1 + +docker push eikek0/docspell:restserver-latest +docker push eikek0/docspell:joex-latest +docker push eikek0/docspell:consumedir-latest + +# test with docker-compose up diff --git a/docker/push-joex-base.sh b/docker/push-joex-base.sh new file mode 100755 index 00000000..90ce8893 --- /dev/null +++ b/docker/push-joex-base.sh @@ -0,0 +1,6 @@ +#!/usr/bin/env bash + +set -e + +docker push eikek0/docspell:joex-base-1 +docker push eikek0/docspell:joex-base-latest