38 lines
1.0 KiB
Docker

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"]