master
dm9pZCAq 2021-12-29 21:08:06 +02:00
commit 9d77688dac
1 changed files with 50 additions and 0 deletions

50
Dockerfile 100644
View File

@ -0,0 +1,50 @@
FROM docker.io/alpine as builder
ENV TMPDIR "/tmp/build"
RUN mkdir -v -- "${TMPDIR}" \
&& apk add --no-cache --virtual __build gettext apache-ant openjdk8
RUN cd "${TMPDIR}" \
&& for repo in i2p.plugins.i2psnark-rpc i2p.i2p; do \
who="i2p/${repo}" \
&& latest="$( \
wget -O- "https://api.github.com/repos/${who}/tags" \
| sed -n '/"name":/{s/.*"\([^"]\+\)".*/\1/p;q}')" \
&& archive="${repo##*.}.tar.gz" \
&& wget -O "${archive}" \
"https://github.com/${who}/archive/${latest}.tar.gz" \
&& tar vxf "${archive}" && rm -vr "${archive}" \
&& mv -v -- "${repo}"-* "${repo}" \
; done
RUN i2p="${TMPDIR}/i2p.i2p" && rpc="${TMPDIR}/i2p.plugins.i2psnark-rpc" \
&& cd "${i2p}" && ant buildI2PSnark buildCore i2psnark \
&& cd "${rpc}" && ant war \
&& mv -v -- \
"${i2p}/apps/i2psnark/java/i2psnark-standalone.zip" \
"${rpc}/src/build/transmission.war.jar" \
/
RUN apk del __build && rm -rf -- "${TMPDIR}"
FROM docker.io/alpine
RUN mkdir -v -- /i2psnark && apk add --no-cache openjdk8
WORKDIR /i2psnark
COPY --from=builder /i2psnark-standalone.zip /transmission.war.jar /i2psnark/
RUN unzip -d / ./i2psnark-standalone.zip \
&& mv -v -- ./transmission.war.jar ./webapps/transmission.war \
&& rm -v -- ./i2psnark-standalone.zip \
&& mkdir -v -- ./i2psnark \
&& printf '%s\n' \
'#!/bin/sh --' \
'set -uex' \
'adduser -u "${USER_ID:?}" -s /bin/sh -h /i2psnark -D i2psnark' \
'chown i2psnark -R -- /i2psnark' \
'exec su i2psnark - -c "java -jar i2psnark.jar"' \
| install -Dm755 /proc/self/fd/0 /i2psnark/entry.sh
CMD ["/i2psnark/entry.sh"]