# Build container FROM debian:11-slim AS builder RUN apt-get -y update && apt-get -y upgrade && apt-get -y install gcc libpcap-dev libvdeplug-dev libpcre3-dev libedit-dev libsdl2-dev libpng-dev libsdl2-ttf-dev build-essential && apt-get clean ADD simh-3.9-0.tgz / WORKDIR /simh-3.9-0 RUN make pdp11 # Final container FROM debian:11-slim ENV DISK_FILENAME=rq0.dsk RUN apt-get -y update && apt-get -y upgrade && apt-get -y install curl ed gcc iproute2 iptables libpcap-dev libpcre3 net-tools telnet vdeplug # Add Tini to handle reaping processes ENV TINI_VERSION 0.19.0 ADD https://github.com/krallin/tini/releases/download/v${TINI_VERSION}/tini /tini RUN chmod +x /tini ENTRYPOINT ["/tini", "--"] # Add CoreDNS to forward DNS based on /etc/resolv.conf ENV COREDNS_VERSION 1.11.1 RUN curl -L https://github.com/coredns/coredns/releases/download/v${COREDNS_VERSION}/coredns_${COREDNS_VERSION}_linux_amd64.tgz|tar -xzC /usr/local/bin/ COPY --from=builder /simh-3.9-0/BIN/pdp11 /usr/local/bin/pdp11 # Uses pattern matching to optionally copy rq0.dsk.gz if it exists COPY startup.sh Corefile boot.ini.template rq0.dsk.g[z] / CMD ["/startup.sh"]