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
This commit is contained in:
Suika 2023-12-09 21:53:26 +01:00 committed by GitHub
parent c9accf5147
commit 6731c02e93
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 21 additions and 20 deletions

View File

@ -10,11 +10,11 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- -
name: Docker meta name: Docker meta
id: docker_meta id: docker_meta
uses: docker/metadata-action@v4 uses: docker/metadata-action@v5
with: with:
images: | images: |
ghcr.io/${{ github.repository }} ghcr.io/${{ github.repository }}
@ -26,26 +26,26 @@ jobs:
org.opencontainers.image.vendor=hydrusnetwork org.opencontainers.image.vendor=hydrusnetwork
- -
name: Set up QEMU name: Set up QEMU
uses: docker/setup-qemu-action@v2 uses: docker/setup-qemu-action@v3
- -
name: Set up Docker Buildx name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2 uses: docker/setup-buildx-action@v3
- -
name: Login to GHCR name: Login to GHCR
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.actor }} username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- -
name: Build name: Build
uses: docker/build-push-action@v3 uses: docker/build-push-action@v5
with: with:
context: . context: .
push: ${{ github.event_name != 'pull_request' }} push: ${{ github.event_name != 'pull_request' }}
file: ./static/build_files/docker/client/Dockerfile 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 }} tags: ${{ steps.docker_meta.outputs.tags }}
labels: ${{ steps.docker_meta.outputs.labels }} labels: ${{ steps.docker_meta.outputs.labels }}
cache-from: type=gha cache-from: type=gha
@ -56,11 +56,11 @@ jobs:
steps: steps:
- -
name: Checkout name: Checkout
uses: actions/checkout@v3 uses: actions/checkout@v4
- -
name: Docker meta name: Docker meta
id: docker_meta id: docker_meta
uses: docker/metadata-action@v4 uses: docker/metadata-action@v5
with: with:
images: | images: |
ghcr.io/${{ github.repository }} ghcr.io/${{ github.repository }}
@ -75,21 +75,21 @@ jobs:
org.opencontainers.image.vendor=hydrusnetwork org.opencontainers.image.vendor=hydrusnetwork
- -
name: Set up QEMU name: Set up QEMU
uses: docker/setup-qemu-action@v2 uses: docker/setup-qemu-action@v3
- -
name: Set up Docker Buildx name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2 uses: docker/setup-buildx-action@v3
- -
name: Login to GHCR name: Login to GHCR
if: github.event_name != 'pull_request' if: github.event_name != 'pull_request'
uses: docker/login-action@v2 uses: docker/login-action@v3
with: with:
registry: ghcr.io registry: ghcr.io
username: ${{ github.actor }} username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }} password: ${{ secrets.GITHUB_TOKEN }}
- -
name: Build name: Build
uses: docker/build-push-action@v3 uses: docker/build-push-action@v5
with: with:
context: . context: .
push: ${{ github.event_name != 'pull_request' }} push: ${{ github.event_name != 'pull_request' }}

View File

@ -1,4 +1,4 @@
FROM alpine:3.16 FROM alpine:3.19
ARG UID ARG UID
ARG GID 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"] ENTRYPOINT ["/bin/sh", "/opt/hydrus/static/build_files/docker/client/entrypoint.sh"]
LABEL git="https://github.com/hydrusnetwork/hydrus" 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 \ 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-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 py3-psutil py3-pysocks py3-requests py3-twisted py3-yaml py3-lz4 py3-html5lib py3-dateutil py3-qtpy py3-mpv py3-service_identity
RUN pip install qtpy Send2Trash python-mpv cloudscraper pyparsing cbor2 Pympler 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 \ RUN set -xe \
&& mkdir -p /opt/hydrus \ && mkdir -p /opt/hydrus \

View File

@ -1,10 +1,10 @@
FROM alpine:3.16 FROM alpine:3.19
ARG UID ARG UID
ARG GID 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 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 Send2Trash twisted RUN pip install --break-system-packages Send2Trash
RUN set -xe \ RUN set -xe \
&& mkdir -p /opt/hydrus \ && mkdir -p /opt/hydrus \