diff --git a/images/prowlarr/Dockerfile b/images/prowlarr/Dockerfile new file mode 100644 index 0000000..bd1cbae --- /dev/null +++ b/images/prowlarr/Dockerfile @@ -0,0 +1,34 @@ +FROM golang:latest as builder + +ARG TARGETARCH +ARG VERSION + +# Install chisel and build rootfs with prowlarr dependencies +RUN \ + go install github.com/canonical/chisel/cmd/chisel@latest \ + && mkdir /rootfs \ + && chisel cut \ + --release ubuntu-24.04 \ + --root /rootfs \ + base-files_base \ + base-files_release-info \ + base-passwd_data \ + ca-certificates_data \ + dotnet-runtime-8.0_libs \ + libsqlite3-0_libs + +# Download prowlarr +RUN \ + case "${TARGETARCH}" in \ + 'amd64') export ARCH='x64' ;; \ + 'arm64') export ARCH='arm64' ;; \ + esac \ + && curl -L "https://github.com/Prowlarr/Prowlarr/releases/download/v${VERSION}/Prowlarr.master.${VERSION}.linux-core-${ARCH}.tar.gz" \ + | tar xzf - -C / \ + && rm -rf /Prowlarr/Prowlarr.Update + +FROM scratch +COPY --from=builder /rootfs / +COPY --from=builder /Prowlarr /Prowlarr + +ENTRYPOINT ["/Prowlarr/Prowlarr", "--nobrowser", "--data=/config"] diff --git a/images/prowlarr/version.sh b/images/prowlarr/version.sh new file mode 100755 index 0000000..b7a3670 --- /dev/null +++ b/images/prowlarr/version.sh @@ -0,0 +1,4 @@ +#!/usr/bin/env bash +set -euo pipefail + +curl -s "https://api.github.com/repos/Prowlarr/Prowlarr/releases/latest" | jq -r '.name'