2022-01-23 15:49:26 +00:00
|
|
|
FROM golang:1.17-alpine AS build-kubedoom
|
2019-08-31 18:24:11 +01:00
|
|
|
WORKDIR /go/src/kubedoom
|
2022-01-23 15:49:26 +00:00
|
|
|
ADD go.mod .
|
2019-08-31 18:24:11 +01:00
|
|
|
ADD kubedoom.go .
|
|
|
|
RUN CGO_ENABLED=0 GOOS=linux go build -a -installsuffix cgo -o kubedoom .
|
|
|
|
|
2022-01-23 15:49:26 +00:00
|
|
|
FROM ubuntu:21.10 AS build-essentials
|
|
|
|
ARG TARGETARCH
|
|
|
|
ARG KUBECTL_VERSION=1.23.2
|
|
|
|
RUN apt-get update && apt-get install -y \
|
2019-09-01 20:43:02 +01:00
|
|
|
-o APT::Install-Suggests=0 \
|
|
|
|
--no-install-recommends \
|
|
|
|
wget ca-certificates
|
2019-08-31 18:24:11 +01:00
|
|
|
RUN wget http://distro.ibiblio.org/pub/linux/distributions/slitaz/sources/packages/d/doom1.wad
|
2022-01-23 15:49:26 +00:00
|
|
|
RUN echo "TARGETARCH is $TARGETARCH"
|
|
|
|
RUN echo "KUBECTL_VERSION is $KUBECTL_VERSION"
|
|
|
|
RUN wget -O /usr/bin/kubectl "https://storage.googleapis.com/kubernetes-release/release/v${KUBECTL_VERSION}/bin/linux/${TARGETARCH}/kubectl" \
|
2019-09-01 20:43:02 +01:00
|
|
|
&& chmod +x /usr/bin/kubectl
|
2019-08-31 18:24:11 +01:00
|
|
|
|
2022-01-23 15:49:26 +00:00
|
|
|
FROM ubuntu:21.10 AS build-doom
|
2019-08-31 18:24:11 +01:00
|
|
|
ENV DEBIAN_FRONTEND=noninteractive
|
2022-01-23 15:49:26 +00:00
|
|
|
RUN apt-get update && apt-get install -y \
|
2019-09-01 20:43:02 +01:00
|
|
|
-o APT::Install-Suggests=0 \
|
|
|
|
--no-install-recommends \
|
|
|
|
build-essential \
|
|
|
|
libsdl-mixer1.2-dev \
|
|
|
|
libsdl-net1.2-dev \
|
|
|
|
gcc
|
|
|
|
ADD /dockerdoom /dockerdoom
|
2022-01-23 15:49:26 +00:00
|
|
|
WORKDIR /dockerdoom/trunk
|
|
|
|
RUN ./configure && make && make install
|
|
|
|
|
|
|
|
FROM ubuntu:21.10 as build-converge
|
|
|
|
WORKDIR /build
|
|
|
|
RUN mkdir -p \
|
|
|
|
/build/root \
|
|
|
|
/build/usr/bin \
|
|
|
|
/build/usr/local/games
|
|
|
|
COPY --from=build-essentials /doom1.wad /build/root
|
|
|
|
COPY --from=build-essentials /usr/bin/kubectl /build/usr/bin
|
|
|
|
COPY --from=build-kubedoom /go/src/kubedoom/kubedoom /build/usr/bin
|
|
|
|
COPY --from=build-doom /usr/local/games/psdoom /build/usr/local/games
|
|
|
|
|
|
|
|
FROM ubuntu:21.10
|
2022-02-06 13:51:35 +00:00
|
|
|
ARG VNCPASSWORD=idbehold
|
2022-01-23 15:49:26 +00:00
|
|
|
RUN apt-get update && apt-get install -y \
|
2019-09-01 20:43:02 +01:00
|
|
|
-o APT::Install-Suggests=0 \
|
|
|
|
--no-install-recommends \
|
|
|
|
libsdl-mixer1.2 \
|
|
|
|
libsdl-net1.2 \
|
|
|
|
x11vnc \
|
|
|
|
xvfb \
|
2022-01-23 15:49:26 +00:00
|
|
|
netcat-openbsd \
|
|
|
|
&& rm -rf /var/lib/apt/lists/*
|
2022-02-06 13:51:35 +00:00
|
|
|
RUN mkdir /root/.vnc && x11vnc -storepasswd "${VNCPASSWORD}" /root/.vnc/passwd
|
2022-01-23 15:49:26 +00:00
|
|
|
COPY --from=build-converge /build /
|
|
|
|
WORKDIR /root
|
|
|
|
ENTRYPOINT ["/usr/bin/kubedoom"]
|