-
Notifications
You must be signed in to change notification settings - Fork 0
/
Dockerfile_rocky8
112 lines (102 loc) · 2.61 KB
/
Dockerfile_rocky8
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
ARG SICKCHILL_VERSION='2024.3.1'
FROM rockylinux/rockylinux:8 AS su-exec-builder
RUN set -x && \
dnf update -y && \
dnf install -y \
gcc \
make \
git \
&& \
git clone --depth 1 https://github.com/ncopa/su-exec.git /opt/su-exec && \
cd /opt/su-exec && \
make
FROM rockylinux/rockylinux:8
LABEL maintainer "DI GREGORIO Nicolas <nicolas.digregorio@gmail.com>"
ARG SICKCHILL_VERSION
### Environment variables
ENV LANG='en_US.UTF-8' \
LANGUAGE='en_US.UTF-8' \
TERM='xterm' \
APPUSER='sickchill' \
APPUID='10000' \
APPGID='10000' \
SICKCHILL_VERSION="${SICKCHILL_VERSION}"
# Copy config files
COPY --from=su-exec-builder /opt/su-exec/su-exec /usr/local/bin/su-exec
COPY root/ /
### Install Application
RUN set -x && \
chmod 1777 /tmp && \
. /usr/local/bin/docker-entrypoint-functions.sh && \
MYUSER=${APPUSER} && \
MYUID=${APPUID} && \
MYGID=${APPGID} && \
ConfigureUser && \
dnf install -y \
dnf-plugins-core \
&& \
dnf config-manager --set-enabled powertools && \
dnf install -y \
epel-release \
rpmfusion-free-release \
https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-8.noarch.rpm \
&& \
dnf update -y && \
dnf install -y \
git \
gcc \
gcc-c++ \
python39-devel \
python39-pip \
openssl-devel \
make \
curl \
cargo \
&& \
pip3 --no-cache-dir install --upgrade \
pip \
setuptools \
virtualenv \
wheel \
&& \
mkdir /opt/sickchill && \
virtualenv /opt/sickchill && \
. /opt/sickchill/bin/activate && \
pip3 --no-cache-dir install --upgrade \
git+https://github.com/SickChill/SickChill.git@${SICKCHILL_VERSION} \
&& \
dnf history -y undo last && \
dnf install -y \
bash \
ca-certificates \
curl \
jq \
libffi \
libxml2 \
mediainfo \
nodejs \
python39 \
python39-lxml \
python39-pip \
unrar \
&& \
mkdir -p /docker-entrypoint.d && \
chmod +x /usr/local/bin/docker-entrypoint.sh && \
ln -snf /usr/local/bin/docker-entrypoint.sh /docker-entrypoint.sh && \
dnf clean all && \
rm -rf /opt/sickchill/.git* \
/tmp/* \
/var/cache/yum/* \
/var/tmp/* \
${HOME}/.cache \
${HOME}/.local \
${HOME}/.cargo
### Volume
VOLUME ["/config", "/downloads", "/tv", "/animes"]
### Expose ports
EXPOSE 8081
### Running User: not used, managed by docker-entrypoint.sh
#USER sickchill
### Start Sickrage
ENTRYPOINT ["/docker-entrypoint.sh"]
CMD ["sickchill"]