Simon Bruder
655a15577a
Some checks reported errors
continuous-integration/drone/push Build was killed
51 lines
1.4 KiB
Docker
51 lines
1.4 KiB
Docker
FROM debian:testing-slim as base
|
|
|
|
ENV DOTNET_CLI_TELEMETRY_OPTOUT 1
|
|
|
|
RUN apt-get update \
|
|
&& apt-get -y install \
|
|
gnupg2 \
|
|
wget \
|
|
git \
|
|
&& wget -qO- https://packages.microsoft.com/keys/microsoft.asc | apt-key add - \
|
|
&& wget -qO /etc/apt/sources.list.d/microsoft.list https://packages.microsoft.com/config/debian/10/prod.list \
|
|
&& apt-get -y purge \
|
|
gnupg2 \
|
|
wget \
|
|
&& apt-get -y autoremove --purge \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
FROM base as builder
|
|
|
|
RUN apt-get update \
|
|
&& apt-get -y install dotnet-sdk-3.0
|
|
|
|
ARG CACHEBUST=1
|
|
ARG GIT_COMMIT=master
|
|
ARG CONFIGURATION=Release
|
|
|
|
RUN git clone --depth=50 https://github.com/ppy/osu \
|
|
&& cd osu \
|
|
&& git checkout ${GIT_COMMIT} \
|
|
&& dotnet build -c ${CONFIGURATION} osu.Desktop \
|
|
&& dotnet publish -c ${CONFIGURATION} -r linux-x64 -o /opt/osu/ osu.Desktop
|
|
|
|
FROM base
|
|
|
|
RUN apt-get update \
|
|
&& apt-get -y install --no-install-recommends \
|
|
dotnet-runtime-3.0 \
|
|
ffmpeg \
|
|
libgl1 \
|
|
pulseaudio \
|
|
&& rm -rf /var/lib/apt/lists/* \
|
|
&& find /usr/lib/x86_64-linux-gnu/ -type l -name 'libav*.so*' -exec sh -c 'cp {} $(echo {}|sed 's/\.[^\.]*$//')' \; \
|
|
&& find /usr/lib/x86_64-linux-gnu/ -type l -name 'libswscale.so*' -exec sh -c 'cp {} $(echo {}|sed 's/\.[^\.]*$//')' \;
|
|
|
|
COPY --from=builder /opt/osu/ /opt/osu/
|
|
|
|
RUN adduser --disabled-password --gecos '' osu
|
|
USER osu
|
|
|
|
ENTRYPOINT ["dotnet", "/opt/osu/osu!.dll"]
|