From 6731c02e934da949982bf12b1178e4a8514773d5 Mon Sep 17 00:00:00 2001 From: Suika <2320837+Suika@users.noreply.github.com> Date: Sat, 9 Dec 2023 21:53:26 +0100 Subject: [PATCH] Docker update 3.19 (#1491) * Docker: Update Client to 3.19 * Docker: Update Server to 3.19 * Docker: Client, PEP 668, ignore externally-managed-environment * Docker: Server, PEP 668, ignore externally-managed-environment * Docker: Client remove linux/386, Client add linux/arm/v6 * Docker: Update workflow action versions * Docker: Add dev dependencies for pillow-heif * Revert: "Docker: Add dev dependencies for pillow-heif" * Docker: Add dev dependencies for pillow-heif fixed * Docker: Client add python3-dev * Docker: Client add libheif-dev * Docker: Client test linux/386 --- .github/workflows/docker_build.yml | 26 ++++++++++----------- static/build_files/docker/client/Dockerfile | 9 +++---- static/build_files/docker/server/Dockerfile | 6 ++--- 3 files changed, 21 insertions(+), 20 deletions(-) diff --git a/.github/workflows/docker_build.yml b/.github/workflows/docker_build.yml index 0acba7c7..eab2ede3 100644 --- a/.github/workflows/docker_build.yml +++ b/.github/workflows/docker_build.yml @@ -10,11 +10,11 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Docker meta id: docker_meta - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 with: images: | ghcr.io/${{ github.repository }} @@ -26,26 +26,26 @@ jobs: org.opencontainers.image.vendor=hydrusnetwork - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Login to GHCR if: github.event_name != 'pull_request' - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v5 with: context: . push: ${{ github.event_name != 'pull_request' }} file: ./static/build_files/docker/client/Dockerfile - platforms: linux/amd64,linux/386,linux/arm/v7,linux/arm64 + platforms: linux/amd64,linux/386,linux/arm/v6,linux/arm/v7,linux/arm64 tags: ${{ steps.docker_meta.outputs.tags }} labels: ${{ steps.docker_meta.outputs.labels }} cache-from: type=gha @@ -56,11 +56,11 @@ jobs: steps: - name: Checkout - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Docker meta id: docker_meta - uses: docker/metadata-action@v4 + uses: docker/metadata-action@v5 with: images: | ghcr.io/${{ github.repository }} @@ -75,21 +75,21 @@ jobs: org.opencontainers.image.vendor=hydrusnetwork - name: Set up QEMU - uses: docker/setup-qemu-action@v2 + uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 + uses: docker/setup-buildx-action@v3 - name: Login to GHCR if: github.event_name != 'pull_request' - uses: docker/login-action@v2 + uses: docker/login-action@v3 with: registry: ghcr.io username: ${{ github.actor }} password: ${{ secrets.GITHUB_TOKEN }} - name: Build - uses: docker/build-push-action@v3 + uses: docker/build-push-action@v5 with: context: . push: ${{ github.event_name != 'pull_request' }} diff --git a/static/build_files/docker/client/Dockerfile b/static/build_files/docker/client/Dockerfile index 215a10e5..d4e876be 100644 --- a/static/build_files/docker/client/Dockerfile +++ b/static/build_files/docker/client/Dockerfile @@ -1,4 +1,4 @@ -FROM alpine:3.16 +FROM alpine:3.19 ARG UID ARG GID @@ -7,11 +7,12 @@ HEALTHCHECK --interval=20s --timeout=10s --retries=3 --start-period=30s CMD ! su ENTRYPOINT ["/bin/sh", "/opt/hydrus/static/build_files/docker/client/entrypoint.sh"] LABEL git="https://github.com/hydrusnetwork/hydrus" -RUN apk --no-cache add fvwm x11vnc xvfb supervisor opencv mpv mpv-libs ffmpeg jq \ +RUN apk --no-cache add fvwm x11vnc xvfb supervisor opencv mpv mpv-libs ffmpeg jq libheif \ openssl nodejs patch font-noto font-noto-emoji font-noto-cjk \ py3-pyside6 py3-beautifulsoup4 py3-pillow py3-numpy py3-openssl py3-cryptography py3-pip py3-opencv py3-lxml py3-chardet \ - py3-psutil py3-pysocks py3-requests py3-twisted py3-yaml py3-lz4 py3-html5lib py3-dateutil -RUN pip install qtpy Send2Trash python-mpv cloudscraper pyparsing cbor2 Pympler + py3-psutil py3-pysocks py3-requests py3-twisted py3-yaml py3-lz4 py3-html5lib py3-dateutil py3-qtpy py3-mpv py3-service_identity +RUN apk --no-cache add build-base python3-dev fribidi-dev harfbuzz-dev jpeg-dev lcms2-dev openjpeg-dev libjpeg-turbo-dev libheif-dev +RUN pip install --break-system-packages Send2Trash cloudscraper pyparsing cbor2 Pympler pillow-heif dateparser RUN set -xe \ && mkdir -p /opt/hydrus \ diff --git a/static/build_files/docker/server/Dockerfile b/static/build_files/docker/server/Dockerfile index e20e4823..798cb0ac 100644 --- a/static/build_files/docker/server/Dockerfile +++ b/static/build_files/docker/server/Dockerfile @@ -1,10 +1,10 @@ -FROM alpine:3.16 +FROM alpine:3.19 ARG UID ARG GID -RUN apk --no-cache add py3-psutil py3-requests py3-twisted py3-yaml py3-lz4 ffmpeg py3-pillow py3-numpy py3-openssl py3-cryptography py3-service_identity py3-opencv py3-pip openssl su-exec -RUN pip install Send2Trash twisted +RUN apk --no-cache add py3-psutil py3-requests py3-twisted py3-yaml py3-lz4 ffmpeg py3-pillow py3-numpy py3-openssl py3-cryptography py3-service_identity py3-opencv py3-pip py3-twisted openssl su-exec +RUN pip install --break-system-packages Send2Trash RUN set -xe \ && mkdir -p /opt/hydrus \