This repository has been archived on 2020-04-09. You can view files and clone it, but cannot push or open issues/pull-requests.
obs-studio/Dockerfile

98 lines
2.8 KiB
Docker

FROM debian:testing as builder
RUN printf "deb http://deb.debian.org/debian testing main contrib non-free\ndeb-src http://deb.debian.org/debian testing main contrib non-free" > /etc/apt/sources.list \
&& apt-get update \
&& apt-get -y install \
build-essential \
cmake \
git \
libasound2-dev \
libavcodec-dev \
libavdevice-dev \
libavfilter-dev \
libavformat-dev \
libavutil-dev \
libcurl4-openssl-dev \
libfdk-aac-dev \
libfontconfig-dev \
libfreetype6-dev \
libgl1-mesa-dev \
libjack-jackd2-dev \
libjansson-dev \
libluajit-5.1-dev \
libmbedtls-dev \
libnss3 \
libpulse-dev \
libqt5svg5-dev \
libqt5x11extras5-dev \
libspeexdsp-dev \
libswresample-dev \
libswscale-dev \
libudev-dev \
libv4l-dev \
libvlc-dev \
libx11-dev \
libx11-xcb-dev \
libx264-dev \
libxcb-randr0-dev \
libxcb-shm0-dev \
libxcb-xfixes0-dev \
libxcb-xinerama0-dev \
libxcb-xinput-dev \
libxcb1-dev \
libxcomposite-dev \
libxinerama-dev \
pkg-config \
python3-dev \
qtbase5-dev \
swig \
wget
RUN cd /tmp/ \
&& wget -nv https://cdn-fastly.obsproject.com/downloads/cef_binary_3770_linux64.tar.bz2 \
&& tar xvf cef_binary_3770_linux64.tar.bz2 \
&& rm -rf cef_binary_3770_linux64.tar.bz2 \
&& mv cef_* cef \
&& git clone --depth=1 --recursive https://github.com/obsproject/obs-studio
RUN mkdir /tmp/obs-studio/build \
&& cd /tmp/obs-studio/build \
&& cmake \
-DUNIX_STRUCTURE=0 \
-DCMAKE_INSTALL_PREFIX=/opt/obs-studio/ \
-DBUILD_BROWSER=ON \
-DCEF_ROOT_DIR="../../cef" \
.. \
&& make -j 4 \
&& make install/strip
FROM debian:testing
# installing debian obs-studio first makes dependency management easier
RUN printf "deb http://deb.debian.org/debian testing main contrib non-free\ndeb-src http://deb.debian.org/debian testing main contrib non-free" > /etc/apt/sources.list \
&& apt-get update \
&& apt-get -y install --no-install-recommends obs-studio \
&& apt-get -y purge obs-studio \
&& apt-get -y install \
i965-va-driver \
intel-media-va-driver \
libatk-bridge2.0-0 \
libatk1.0-0 \
libatspi2.0-0 \
libcurl4 \
libfdk-aac2 \
libnss3 \
libvlc5 \
libxtst6 \
&& rm -rf /var/lib/apt/lists/*
COPY --from=builder /opt/obs-studio/ /opt/obs-studio/
ENV LD_LIBRARY_PATH=/opt/obs-studio/bin/64bit
# For some reason the workdir has to be this, otherwise it will not find the
# locales and fail to start
WORKDIR /opt/obs-studio/bin/64bit/
ENTRYPOINT ["/opt/obs-studio/bin/64bit/obs"]