FROM image-prediction-base WORKDIR /app/service COPY src src COPY incl/pyinfra incl/pyinfra COPY incl/pdf2image incl/pdf2image COPY data data COPY image_prediction image_prediction COPY setup.py setup.py COPY requirements.txt requirements.txt COPY config.yaml config.yaml COPY banner.txt banner.txt # Install dependencies differing from base image. RUN python3 -m pip install -r requirements.txt RUN python3 -m pip install -r incl/pyinfra/requirements.txt RUN python3 -m pip install -r incl/pdf2image/requirements.txt RUN python3 -m pip install -e . RUN python3 -m pip install -e incl/pyinfra RUN python3 -m pip install -e incl/pdf2image # User for the process to run as RUN groupadd --gid 1001 non-root \ && useradd --uid 1001 --gid 1001 -m non-root COPY --chown=1001:1001 ./src/serve.py ./src/serve.py RUN chown -R 1001:1001 ./image_prediction ./image_prediction RUN chown -R 1001:1001 ./config.yaml ./config.yaml RUN chown -R 1001:1001 ./banner.txt ./banner.txt RUN chown -R 1001:1001 ./incl ./incl EXPOSE 5000 EXPOSE 8080 CMD ["python3", "src/serve.py"]