38 lines
1.0 KiB
Docker
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"]
|