osu/Dockerfile

48 lines
1.4 KiB
Docker
Raw Normal View History

FROM debian:testing-slim as builder
2019-11-15 22:46:02 +01:00
ENV DOTNET_CLI_TELEMETRY_OPTOUT 1
RUN apt-get update \
&& apt-get -y install \
git \
2019-11-15 22:46:02 +01:00
gnupg2 \
wget \
&& 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 update \
&& apt-get -y install \
dotnet-sdk-3.0 \
2019-11-15 22:46:02 +01:00
&& apt-get -y autoremove --purge \
&& rm -rf /var/lib/apt/lists/*
2019-11-30 13:28:16 +01:00
ARG CACHEBUST=1
2019-11-30 13:29:20 +01:00
ARG GIT_COMMIT=master
ARG CONFIGURATION=Release
2019-11-30 13:28:16 +01:00
2019-11-30 13:29:20 +01:00
RUN git clone --depth=50 https://github.com/ppy/osu \
2019-11-15 22:46:02 +01:00
&& cd osu \
2019-11-30 13:29:20 +01:00
&& git checkout ${GIT_COMMIT} \
&& dotnet publish -c ${CONFIGURATION} -r linux-x64 --self-contained true -o /opt/osu/ osu.Desktop
2019-11-15 22:46:02 +01:00
FROM debian:testing-slim
2019-11-15 22:46:02 +01:00
RUN apt-get update \
&& apt-get -y install --no-install-recommends \
ca-certificates \
2019-11-15 22:46:02 +01:00
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 ["/opt/osu/osu!"]