-
Notifications
You must be signed in to change notification settings - Fork 69
/
Copy pathDockerfile
35 lines (24 loc) · 836 Bytes
/
Dockerfile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
FROM python:3.12.3-slim-bookworm AS app
WORKDIR /app
ARG UID=1000
ARG GID=1000
RUN apt-get update \
&& apt-get install -y --no-install-recommends libsqlite3-mod-spatialite binutils libproj-dev gdal-bin \
&& rm -rf /var/lib/apt/lists/* /usr/share/doc /usr/share/man \
&& apt-get clean \
&& groupadd -g "${GID}" python \
&& useradd --create-home --no-log-init -u "${UID}" -g "${GID}" python \
&& mkdir -p /public_collected public \
&& chown python:python -R /public_collected /app
USER python
COPY --chown=python:python requirements.txt ./
RUN pip install --no-warn-script-location --no-cache-dir --user \
-r requirements.txt
ENV PYTHONUNBUFFERED="true" \
PYTHONPATH="." \
PATH="${PATH}:/home/python/.local/bin" \
USER="python"
COPY --chown=python:python . .
RUN mkdir -p /app/db
EXPOSE 8000
ENTRYPOINT ["python"]