mirror of
https://github.com/gotson/komga.git
synced 2025-12-20 23:45:11 +01:00
build(docker): add support for AVIF on amd64/arm64 images
Co-authored-by: Fahim <37258115+farahnur42@users.noreply.github.com>
This commit is contained in:
parent
0267ba8e5a
commit
a92db64873
1 changed files with 24 additions and 7 deletions
|
|
@ -1,19 +1,36 @@
|
|||
FROM eclipse-temurin:19-jre as builder
|
||||
FROM eclipse-temurin:17-jre as builder
|
||||
ARG JAR={{distributionArtifactFile}}
|
||||
COPY assembly/* /
|
||||
RUN java -Djarmode=layertools -jar ${JAR} extract
|
||||
|
||||
FROM eclipse-temurin:19-jre
|
||||
# Install libjxl on x64 only. It is not available on other architectures.
|
||||
RUN if [ "`uname -m`" = "x86_64" ]; then \
|
||||
apt -y update && \
|
||||
apt -y install wget && \
|
||||
# amd64 builder: uses ubuntu:22.04, as libjxl is not available on more recent versions
|
||||
FROM ubuntu:22.04 as build-amd64
|
||||
ENV JAVA_HOME=/opt/java/openjdk
|
||||
COPY --from=eclipse-temurin:21-jre $JAVA_HOME $JAVA_HOME
|
||||
ENV PATH="${JAVA_HOME}/bin:${PATH}"
|
||||
RUN apt -y update && \
|
||||
apt -y install software-properties-common wget && \
|
||||
add-apt-repository -y ppa:strukturag/libheif && \
|
||||
add-apt-repository -y ppa:strukturag/libde265 && \
|
||||
apt -y update && apt install -y libheif-dev && \
|
||||
wget "https://github.com/libjxl/libjxl/releases/download/v0.8.2/jxl-debs-amd64-ubuntu-22.04-v0.8.2.tar.gz" && \
|
||||
tar -xzf jxl-debs-amd64-ubuntu-22.04-v0.8.2.tar.gz && \
|
||||
apt -y install ./jxl_0.8.2_amd64.deb ./libjxl_0.8.2_amd64.deb ./libjxl-dev_0.8.2_amd64.deb && \
|
||||
rm *.deb && rm *.ddeb && rm jxl-debs-amd64-ubuntu-22.04-v0.8.2.tar.gz && \
|
||||
apt -y remove wget && apt -y clean && rm -rf /var/lib/apt/lists/*; fi
|
||||
apt -y remove wget software-properties-common && apt -y autoremove && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
# arm64 builder: uses ubuntu23.10 which has libheif 1.16
|
||||
FROM ubuntu:23.10 as build-arm64
|
||||
ENV JAVA_HOME=/opt/java/openjdk
|
||||
COPY --from=eclipse-temurin:21-jre $JAVA_HOME $JAVA_HOME
|
||||
ENV PATH="${JAVA_HOME}/bin:${PATH}"
|
||||
RUN apt -y update && \
|
||||
apt -y install libheif-dev
|
||||
|
||||
# arm builder: uses temurin-17, as arm32 support was dropped in JDK 21
|
||||
FROM eclipse-temurin:17-jre as build-arm
|
||||
|
||||
FROM build-${TARGETARCH} AS runner
|
||||
VOLUME /tmp
|
||||
VOLUME /config
|
||||
WORKDIR app
|
||||
|
|
|
|||
Loading…
Reference in a new issue