Updated to bullseye, added nncp

This commit is contained in:
Deon George 2022-10-17 00:05:44 +11:00
parent 6be2019885
commit 99308f701b
2 changed files with 34 additions and 20 deletions

View File

@ -1,7 +1,7 @@
# NAME leenooks/sbbs # NAME leenooks/sbbs
# VERSION latest # VERSION latest
FROM debian:buster-slim FROM debian:bullseye-slim
# Base utilities # Base utilities
RUN apt-get update \ RUN apt-get update \
@ -13,44 +13,54 @@ RUN apt-get update \
# Set the default timezone for the container # Set the default timezone for the container
RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime RUN ln -sf /usr/share/zoneinfo/Australia/Melbourne /etc/localtime
# Add NNCP
RUN echo "deb http://deb.debian.org/debian bullseye-backports main" > /etc/apt/sources.list.d/backports.list
RUN apt-get update \
&& apt-get install -yyq nncp less ssmtp \
&& mkdir /etc/nncp \
&& apt-get -y autoremove \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /var/log/nncp
# Add in Leenooks' apt repository # Add in Leenooks' apt repository
RUN curl -sL http://apt.leenooks.net/setup.sh | DISTRO=buster bash RUN curl -sL http://apt.leenooks.net/setup.sh | DISTRO=bullseye bash
# Add ZeroTier # Add ZeroTier
RUN echo "deb [trusted=yes] http://download.zerotier.com/debian/buster buster main" > /etc/apt/sources.list.d/zerotier.list #RUN echo "deb [trusted=yes] http://download.zerotier.com/debian/bullseye bullseye main" > /etc/apt/sources.list.d/zerotier.list
# Leenooks Utils # Leenooks Utils
RUN apt-get update \ #RUN apt-get update \
&& apt-get install -yqq zerotier-one \ # && apt-get install -yqq zerotier-one \
&& 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/*
# Other Utilities # Other Utilities
RUN echo "deb http://deb.debian.org/debian stretch main contrib" > /etc/apt/sources.list.d/contrib.list #RUN echo "deb http://deb.debian.org/debian stretch main contrib" > /etc/apt/sources.list.d/contrib.list
RUN apt-get update \ #RUN apt-get update \
&& apt-get install -yqq dosemu \ # && apt-get install -yqq dosemu \
&& sed -ie 's#^lredir \(.*\)/media/cdrom#rem &#' /etc/dosemu/freedos/autoexec.bat \ # && sed -ie 's#^lredir \(.*\)/media/cdrom#rem &#' /etc/dosemu/freedos/autoexec.bat \
&& 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/*
# Build SBBS # Build SBBS
COPY 0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch /tmp/ COPY 0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch /tmp/
RUN apt-get update \ RUN apt-get update \
&& apt-get install -yqq git build-essential libnspr4-dev libncurses5-dev libncursesw5-dev libarchive-dev cvs wget pkgconf libcap2-bin sudo libarchive13 \ && apt-get install -yqq git build-essential autoconf2.13 libnspr4-dev libncurses5-dev libncursesw5-dev libarchive-dev cvs wget python2.7 pkgconf libcap2-bin sudo libarchive13 \
&& mkdir /opt/sbbs && cd /tmp \ && mkdir /opt/sbbs && cd /tmp \
&& wget https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/install/GNUmakefile \ && wget https://gitlab.synchro.net/sbbs/sbbs/-/raw/master/install/GNUmakefile \
&& git clone https://gitlab.com/SynchronetBBS/sbbs.git /opt/sbbs/repo \ && git clone https://gitlab.com/SynchronetBBS/sbbs.git /opt/sbbs/repo \
&& cd /opt/sbbs/repo && git checkout -b custom && git apply /tmp/0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch && cd /tmp \ && cd /opt/sbbs/repo && git checkout -b custom && git apply /tmp/0001-Feature-main-sbbs-404-Reserve-space-up-to-tagsBuffer.patch && cd /tmp \
&& make RELEASE=1 USE_DOSEMU=1 NO_X=1 SBBSDIR=/opt/sbbs install \ && make RELEASE=1 NO_X=1 SBBSDIR=/opt/sbbs install \
&& rm -rf /opt/sbbs/3rdp /opt/sbbs/src \ && rm -rf /opt/sbbs/3rdp /opt/sbbs/src \
&& mv /opt/sbbs/ctrl /opt/sbbs/ctrl.orig \ && mv /opt/sbbs/ctrl /opt/sbbs/ctrl.orig \
&& mv /opt/sbbs/text /opt/sbbs/text.orig \ && mv /opt/sbbs/text /opt/sbbs/text.orig \
&& mv /opt/sbbs/xtrn /opt/sbbs/xtrn.orig \ && mv /opt/sbbs/xtrn /opt/sbbs/xtrn.orig \
&& mkdir /opt/sbbs/nodes.orig && mv /opt/sbbs/node[1-5] /opt/sbbs/nodes.orig \ && mkdir /opt/sbbs/nodes.orig && mv /opt/sbbs/node[1-5] /opt/sbbs/nodes.orig \
&& 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 git build-essential libnspr4-dev libncurses5-dev libarchive-dev libncursesw5-dev cvs wget pkgconf libcap2-bin sudo \ && SUDO_FORCE_REMOVE=yes apt-get -y purge git build-essential autoconf2.13 libnspr4-dev libncurses5-dev libarchive-dev libncursesw5-dev cvs wget pkgconf libcap2-bin sudo \
&& apt-get -y autoremove \ && apt-get -y autoremove \
&& apt-get clean \ && apt-get clean \
&& rm -rf /opt/sbbs/repo \ && rm -rf /opt/sbbs/repo \
@ -67,13 +77,14 @@ WORKDIR /opt/sbbs
ENV SBBSCTRL=/opt/sbbs/ctrl ENV SBBSCTRL=/opt/sbbs/ctrl
ENV SBBSEXEC=/opt/sbbs/exec ENV SBBSEXEC=/opt/sbbs/exec
ENV PATH=$PATH:${SBBSEXEC} ENV PATH=$PATH:${SBBSEXEC}
ENV NNCPCFG /etc/nncp/nncp.conf
COPY start.sh ${SBBSEXEC}/ COPY start.sh ${SBBSEXEC}/
COPY doorparty.js ${SBBSEXEC}/ COPY doorparty.js ${SBBSEXEC}/
COPY main.cnf /opt/sbbs/ctrl.orig/ COPY main.cnf /opt/sbbs/ctrl.orig/
VOLUME [ "/var/lib/zerotier-one" ] VOLUME [ "/var/lib/zerotier-one","/var/spool/nncp" ]
VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/fido","/opt/sbbs/mods","/opt/sbbs/text" ] VOLUME [ "/opt/sbbs/data","/opt/sbbs/ctrl","/opt/sbbs/fido","/opt/sbbs/mods","/opt/sbbs/text","/etc/nncp" ]
COPY logrotate.d /etc/logrotate.d/ COPY logrotate.d /etc/logrotate.d/
RUN chmod 644 /etc/logrotate.d/* RUN chmod 644 /etc/logrotate.d/*

3
supervisord.d/nncp.conf Normal file
View File

@ -0,0 +1,3 @@
[program:nncp]
#environment=NNCPCFG="/etc/nncp/nncp.conf"
command=/usr/bin/nncp-daemon -autotoss