ARG BUILD_FROM FROM ${BUILD_FROM} ENV LANG=C.UTF-8 PYTHONUNBUFFERED=1 PYTHONDONTWRITEBYTECODE=1 RUN apk add --no-cache python3 py3-pip WORKDIR /opt/goodwe COPY requirements.txt ./ # --break-system-packages: Alpine marks its python "externally managed" (PEP 668). # This is a single-purpose container, so there is no environment to protect and a # venv would only add a layer and a PATH to get wrong. RUN pip3 install --no-cache-dir --break-system-packages -r requirements.txt COPY app/ ./app/ COPY run.sh /run.sh RUN chmod a+x /run.sh CMD ["/run.sh"]