-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathDockerfile.alpine
More file actions
97 lines (87 loc) · 2.87 KB
/
Dockerfile.alpine
File metadata and controls
97 lines (87 loc) · 2.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
FROM alpine:3.19
# version args
ARG SHORT_TAG_VER
ARG FULL_TAG_VER
ARG QBITTORRENT_VER
ARG FILEBOT_VER
# version args for s6 overlay
ARG S6_OVERLAY_VER
ARG S6_OVERLAY_ARCH="x86_64"
ARG VUETORRENT_VER
LABEL org.opencontainers.image.version="${SHORT_TAG_VER}"
LABEL org.opencontainers.image.tag.version="${FULL_TAG_VER}"
LABEL org.opencontainers.image.qbittorrent.version="${QBITTORRENT_VER}"
LABEL org.opencontainers.image.filebot.version="${FILEBOT_VER}"
LABEL org.opencontainers.image.s6-overlay.version="${S6_OVERLAY_VER}"
LABEL org.opencontainers.image.vuetorrent.version="${VUETORRENT_VER}"
LABEL maintainer="devster31"
# environment settings
ENV HOME="/config" \
XDG_CONFIG_HOME="/config" \
XDG_DATA_HOME="/config" \
QBITTORRENT_VER="${QBITTORRENT_VER}" \
FILEBOT_VER="${FILEBOT_VER}" \
S6_OVERLAY_VER="${S6_OVERLAY_VER}" \
VUETORRENT_VER="${VUETORRENT_VER}" \
PATH="/command:$PATH"
# add repo and install qbitorrent
RUN \
apk add \
7zip \
chromaprint \
curl \
file \
gnupg \
java-jna-native \
jq \
libmediainfo \
openjdk21-jre-headless \
qbittorrent-nox \
shadow \
xz \
&& \
echo "**** install FileBot portable ****" && \
curl -sSL https://get.filebot.net/filebot/FileBot_5.1.2/FileBot_5.1.2-portable.tar.xz -o /tmp/filebot-portable.tar.xz && \
mkdir -p /app/filebot && \
tar x -v -C /app/filebot -f /tmp/filebot-portable.tar.xz && \
ln -s /app/filebot/filebot.sh /usr/local/bin/filebot \
&& \
echo "**** cleanup ****" && \
apk cache clean && \
rm -rf \
/var/tmp/* \
/tmp/*
RUN \
echo "**** add s6 overlay ****" && \
curl -sSL -o \
/tmp/s6-overlay-noarch.tar.xz \
"https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VER}/s6-overlay-noarch.tar.xz" && \
tar x -v -f \
/tmp/s6-overlay-noarch.tar.xz -C / && \
curl -sSL -o \
/tmp/s6-overlay.tar.xz \
"https://github.com/just-containers/s6-overlay/releases/download/v${S6_OVERLAY_VER}/s6-overlay-${S6_OVERLAY_ARCH}.tar.xz" && \
tar x -v -f \
/tmp/s6-overlay.tar.xz -C / && \
echo "**** add VueTorrent ****" && \
curl -sSL -o \
/tmp/vuetorrent.zip \
"https://github.com/WDaan/VueTorrent/releases/download/v${VUETORRENT_VER}/vuetorrent.zip" && \
unzip -d /app /tmp/vuetorrent.zip && \
echo "**** create abc user ****" && \
# add group users
groupmod -g 100 users && \
# add abc user without shell
useradd -u 911 -U -d /config -m -s /bin/false abc && \
# assign users group to abc user
usermod -G users abc && \
rm -rf \
/tmp/*
ENV LANG C.UTF-8
ENV FILEBOT_OPTS "-Dapplication.deployment=docker"
# copy local files
COPY root/ /
# ports and volumes
EXPOSE 6881 6881/udp 8080
VOLUME /config
ENTRYPOINT ["/init"]