Skip to content

Commit 609116e

Browse files
committed
fix: prevent zombie processes
1 parent cbf47ff commit 609116e

1 file changed

Lines changed: 9 additions & 2 deletions

File tree

Dockerfile

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,11 @@ RUN --mount=type=bind,source=docker/replace-apt-sources.sh,target=replace-apt-so
2525
build-essential \
2626
# install dosbox for Assembly Course
2727
dosbox=0.74-4.3 \
28+
# install tini
29+
&& TINI_ARCH=$(dpkg --print-architecture) \
30+
&& curl -L "https://github.com/krallin/tini/releases/download/v0.19.0/tini-${TINI_ARCH}" -o /usr/bin/tini \
31+
&& chmod +x /usr/bin/tini \
32+
# clean up
2833
&& apt-get clean autoclean \
2934
&& apt-get autoremove -y \
3035
&& rm -rf /var/lib/apt/lists/* \
@@ -73,12 +78,14 @@ ENV NACOS_ADDR="127.0.0.1:8848" \
7378
JAVA_OPT="" \
7479
JAVA_OPT_EXT=""
7580

76-
ENTRYPOINT /wait \
81+
ENTRYPOINT ["/usr/bin/tini", "--"]
82+
83+
CMD /wait \
7784
&& JAVA_OPT="${JAVA_OPT} -jar sduoj-judger.jar" \
7885
&& JAVA_OPT="${JAVA_OPT} ${JAVA_OPT_EXT}" \
7986
&& JAVA_OPT="${JAVA_OPT} --sduoj.config.active=$ACTIVE" \
8087
&& JAVA_OPT="${JAVA_OPT} --sduoj.config.nacos-addr=$NACOS_ADDR" \
81-
&& echo "SDUOJ is starting, you can check the '/app/logs/judger.log'" \
88+
&& echo "SDUOJ is starting. Logs are in '/app/logs/judger.log'" \
8289
&& echo "Run: java ${JAVA_OPT}" \
8390
&& mkdir -p /app/logs \
8491
&& exec java ${JAVA_OPT} >> /app/logs/judger.log 2>&1

0 commit comments

Comments
 (0)