### Build Image FROM golang:1.17-buster AS builder LABEL maintainer="Christian Pointner <equinox@helsinki.at>" RUN set -e \ && apt-get update -q \ && apt-get install -y -q --no-install-recommends make \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* COPY Makefile go.mod go.sum /usr/src/ COPY api /usr/src/api COPY auth /usr/src/auth COPY cmd /usr/src/cmd COPY importer /usr/src/importer COPY store /usr/src/store COPY ui /usr/src/ui WORKDIR /usr/src RUN make ### APP Image FROM debian:buster LABEL maintainer="Christian Pointner <equinox@helsinki.at>" RUN set -e \ && apt-get update -q \ && apt-get install -y -q --no-install-recommends ffmpeg ca-certificates netcat \ && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* RUN set -e \ && mkdir -p /etc/aura /srv/audio /srv/import-temp \ && adduser --home /srv --no-create-home --system --uid 1000 --group app \ && chown 1000:1000 /srv/audio /srv/import-temp COPY contrib/for-docker.yaml /etc/aura/tank.yaml COPY --from=builder /usr/src/tank /usr/local/bin/tank VOLUME /srv/audio VOLUME /srv/import-temp ENV TANK_STORE_PATH=/srv/audio TANK_IMPORTER_TEMP_PATH=/srv/import-temp ENV TANK_DB_HOST=172.17.0.1 TANK_DB_USERNAME=tank TANK_DB_PASSWORD=aura TANK_DB_NAME=tank EXPOSE 8040/tcp USER app CMD ["/usr/local/bin/tank", "run", "--listen", ":8040"]