Updates and now enabled using daemon mode
This commit is contained in:
parent
1e75b5fe05
commit
adc38bc7d4
@ -36,7 +36,7 @@ RUN apt-get update \
|
|||||||
|
|
||||||
# Build SBBS
|
# Build SBBS
|
||||||
RUN apt-get update \
|
RUN apt-get update \
|
||||||
&& apt-get install -yqq build-essential libnspr4-dev libncurses5-dev libmozjs185-dev cvs wget pkgconf sudo \
|
&& apt-get install -yqq build-essential libnspr4-dev libncurses5-dev libncursesw5-dev libmozjs185-dev cvs wget pkgconf libcap2-bin sudo \
|
||||||
&& mkdir /opt/sbbs && cd /tmp \
|
&& mkdir /opt/sbbs && cd /tmp \
|
||||||
&& wget http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/install/GNUmakefile \
|
&& wget http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/install/GNUmakefile \
|
||||||
&& make RELEASE=1 USE_DOSEMU=1 NO_X=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185 SBBSDIR=/opt/sbbs install \
|
&& make RELEASE=1 USE_DOSEMU=1 NO_X=1 JSINCLUDE=/usr/include/js JSLIB=mozjs185 SBBSDIR=/opt/sbbs install \
|
||||||
@ -50,7 +50,7 @@ RUN apt-get update \
|
|||||||
&& ln -sf nodes/node4 /opt/sbbs/ \
|
&& ln -sf nodes/node4 /opt/sbbs/ \
|
||||||
&& ln -sf nodes/node5 /opt/sbbs/ \
|
&& ln -sf nodes/node5 /opt/sbbs/ \
|
||||||
&& find /opt/sbbs -name CVS -type d -exec rm -rf {} + \
|
&& find /opt/sbbs -name CVS -type d -exec rm -rf {} + \
|
||||||
&& SUDO_FORCE_REMOVE=yes apt-get -y purge build-essential libnspr4-dev libncurses5-dev libmozjs185-dev cvs wget pkgconf \
|
&& SUDO_FORCE_REMOVE=yes apt-get -y purge build-essential libnspr4-dev libncurses5-dev libncursesw5-dev libmozjs185-dev cvs wget pkgconf libcap2-bin sudo \
|
||||||
&& apt-get -y autoremove \
|
&& apt-get -y autoremove \
|
||||||
&& apt-get clean \
|
&& apt-get clean \
|
||||||
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/*
|
||||||
@ -60,6 +60,8 @@ ENV SBBSCTRL=/opt/sbbs/ctrl
|
|||||||
ENV SBBSEXEC=/opt/sbbs/exec
|
ENV SBBSEXEC=/opt/sbbs/exec
|
||||||
ENV PATH=$PATH:${SBBSEXEC}
|
ENV PATH=$PATH:${SBBSEXEC}
|
||||||
|
|
||||||
|
COPY start.sh ${SBBSEXEC}/
|
||||||
|
|
||||||
VOLUME [ "/var/lib/zerotier-one" ]
|
VOLUME [ "/var/lib/zerotier-one" ]
|
||||||
VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/nodes","/opt/sbbs/fido","/opt/sbbs/text" ]
|
VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/nodes","/opt/sbbs/fido","/opt/sbbs/text" ]
|
||||||
|
|
||||||
@ -69,4 +71,3 @@ COPY supervisord.d /etc/supervisor/conf.d/
|
|||||||
|
|
||||||
COPY init /sbin/init
|
COPY init /sbin/init
|
||||||
ENTRYPOINT [ "/sbin/init" ]
|
ENTRYPOINT [ "/sbin/init" ]
|
||||||
CMD ["sbbs"]
|
|
||||||
|
12
init
12
init
@ -26,7 +26,11 @@ if [ -x /usr/sbin/zerotier-one -a -n "${ENABLE_ZT}" ]; then
|
|||||||
/usr/sbin/zerotier-one -d
|
/usr/sbin/zerotier-one -d
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Start Supervisord
|
if [ -n "$1" ]; then
|
||||||
/usr/bin/supervisord -c /etc/supervisor/supervisord.conf
|
echo "* Starting [$@]"
|
||||||
|
exec "$@"
|
||||||
exec "$@"
|
else
|
||||||
|
# Start Supervisord
|
||||||
|
echo "* Starting supervisord"
|
||||||
|
exec /usr/bin/supervisord -nc /etc/supervisor/supervisord.conf
|
||||||
|
fi
|
||||||
|
@ -7,4 +7,6 @@
|
|||||||
missingok
|
missingok
|
||||||
createolddir 775 root root
|
createolddir 775 root root
|
||||||
notifempty
|
notifempty
|
||||||
|
copytruncate
|
||||||
|
dateyesterday
|
||||||
}
|
}
|
||||||
|
37
start.sh
Executable file
37
start.sh
Executable file
@ -0,0 +1,37 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
export SBBSCTRL=/opt/sbbs/ctrl
|
||||||
|
PIDFILE=/run/sbbs.pid
|
||||||
|
|
||||||
|
# Proxy signals
|
||||||
|
function kill_app(){
|
||||||
|
kill $(cat ${SBBS_PID})
|
||||||
|
exit 0 # exit okay
|
||||||
|
}
|
||||||
|
trap "kill_app" SIGINT SIGTERM
|
||||||
|
|
||||||
|
sbbs -d
|
||||||
|
sleep 5
|
||||||
|
|
||||||
|
SBBS_PID=$(cat ${PIDFILE})
|
||||||
|
echo "* SBBS PID [${SBBS_PID}]"
|
||||||
|
|
||||||
|
if [ -n ${SBBS_PID} ]; then
|
||||||
|
while [ -d /proc/${SBBS_PID} ]; do
|
||||||
|
NAME=$(cat /proc/${SBBS_PID}/cmdline |awk -F\00 '{print $1}')
|
||||||
|
#echo "* SBBS NAME [${NAME}]"
|
||||||
|
|
||||||
|
if [ ${NAME} != 'sbbs' ]; then
|
||||||
|
echo "! Name not matching? [${NAME}]"
|
||||||
|
break;
|
||||||
|
fi
|
||||||
|
|
||||||
|
sleep 15
|
||||||
|
done
|
||||||
|
|
||||||
|
echo "? SBBS stopped"
|
||||||
|
else
|
||||||
|
echo "? NO SBBS PID?"
|
||||||
|
fi
|
||||||
|
|
||||||
|
exit 1
|
3
supervisord.d/sbbs.conf
Normal file
3
supervisord.d/sbbs.conf
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
[program:sbbs]
|
||||||
|
command=/opt/sbbs/exec/start.sh
|
||||||
|
stopwaitsecs=60
|
Loading…
Reference in New Issue
Block a user