Skip to content
Snippets Groups Projects
Dockerfile 1.16 KiB
Newer Older
  • Learn to ignore specific revisions
  • FROM debian
    
    LABEL maintainer="David Trattnig <david.trattnig@subsquare.at>"
    
    ENV AURA_UID=2872
    ENV AURA_GID=2872
    
    # needed for pipewire, see docker-compose.yaml for more
    ENV XDG_RUNTIME_DIR=/tmp
    
    
    # Dependencies & Utils
    
    RUN apt update --allow-releaseinfo-change && \
          apt -y --no-install-recommends install \
          build-essential \
    
          libpipewire-0.3-0 \
          pipewire-jack \
          # FIXME: dont install liquidsoap via apt
          liquidsoap \
          # only needed for ALSA?
          # alsa-utils \
    
          libssl-dev
    
    # Setup Engine
    
    ENV TZ=Europe/Vienna
    RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
    
    RUN mkdir -p /srv/src /srv/tests /srv/config srv/logs srv/socket /var/audio
    
    COPY src /srv/src
    
    David Trattnig's avatar
    David Trattnig committed
    COPY tests /srv/tests
    
    COPY config/sample.engine-core.docker.ini /srv/config/engine-core.ini
    
    COPY Makefile /srv/Makefile
    COPY VERSION /srv/VERSION
    
    RUN groupadd --gid ${AURA_GID} aura && \
          useradd --gid ${AURA_GID} --no-user-group --uid ${AURA_UID} --home-dir /srv --no-create-home aura && \
          chown -R ${AURA_UID}:${AURA_GID}  /srv /var/audio
    
    David Trattnig's avatar
    David Trattnig committed
    
    
    # Start the Engine
    
    David Trattnig's avatar
    David Trattnig committed
    EXPOSE 1234/tcp
    
    ENTRYPOINT ["make"]
    CMD ["run"]