# SPDX-FileCopyrightText: 2022 Georg-August-Universität Göttingen # # SPDX-License-Identifier: CC0-1.0 # syntax=docker/dockerfile:1 FROM python:3.8-alpine as builder # build icu lib # hadolint ignore=DL3018 RUN apk add --no-cache g++ icu-dev \ && pip install --no-cache-dir PyICU==2.8.1 FROM python:3.8-alpine LABEL \ org.label-schema.dockerfile="/Dockerfile" \ org.label-schema.license="AGPL-3.0-or-later" \ org.label-schema.maintainer="Stefan Hynek" \ org.label-schema.name="Textgrid Repository WebDAV Server" \ org.label-schema.schema-version="1.0" \ org.label-schema.url="https://gitlab.gwdg.de/dariah-de/textgridrep/repdav" \ org.label-schema.vcs-url="https://gitlab.gwdg.de/dariah-de/textgridrep/repdav" \ org.label-schema.vendor="SUB/FE" # copy pre-compiled icu lib from builder stage COPY --from=builder /usr/local/lib/python3.8/site-packages/icu /usr/local/lib/python3.8/site-packages/icu COPY --from=builder /usr/local/lib/python3.8/site-packages/PyICU-2.8.1.dist-info /usr/local/lib/python3.8/site-packages/PyICU-2.8.1.dist-info # icu-dev package is nevertheless needed by the python library # hadolint ignore=DL3018 RUN adduser -D repdav \ && apk add --no-cache icu-dev USER repdav COPY --chown=repdav requirements.txt / RUN pip install \ --no-cache-dir \ --requirement requirements.txt \ --user WORKDIR /app COPY --chown=repdav src/ . ARG build_date ARG vcs_ref ARG version LABEL \ org.label-schema.build-date="${build_date}" \ org.label-schema.vcs-ref="${vcs_ref}" \ org.label-schema.version="${version}" CMD ["python", "main.py"] COPY Dockerfile /