-
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
64 lines (51 loc) · 1.31 KB
/
Dockerfile
File metadata and controls
64 lines (51 loc) · 1.31 KB
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
FROM ghcr.io/opengisch/qgis-slim:3.40.9 AS base
# switch to root user for install
USER 0
RUN apt-get update && \
apt-get install -y \
python3-pip \
python3-setuptools
#########################
# DEV
#########################
FROM base AS dev
LABEL org.opengisch.author="Clemens Rudert <clemens@opengis.ch>"
LABEL org.opengisch.image.title="QGIS-Server-Light"
USER 0
RUN apt-get install -y \
python3-venv \
make
WORKDIR /opt/qgis-server-light/
WORKDIR /app
COPY ./ .
ENV VENV_PATH=/opt/qgis-server-light/venv
RUN make install-dev
ENTRYPOINT ["/tini", "--", "make"]
CMD ["run-reload"]
#########################
# BUILDER (FOR RELEASE)
#########################
FROM base AS builder
WORKDIR /app
COPY ./ .
RUN WITH_WORKER=true python3 setup.py bdist_wheel
#########################
# RELEASE
#########################
FROM base AS release
COPY --from=builder /app/dist/*.whl /tmp
COPY --chmod=+x docker/run /bin
RUN pip3 install --break-system-packages /tmp/*.whl
ENV QSL_REDIS_URL=redis://localhost:1234
ENV QSL_SVG_PATH=/io/svg
ENV QSL_DATA_ROOT=/io/data
ENV QSL_LOG_LEVEL=info
USER 1001
ENTRYPOINT ["/tini", "--"]
CMD [\
"sh", "-c", "redis_worker \
--redis-url \"$QSL_REDIS_URL\" \
--svg-path \"$QSL_SVG_PATH\" \
--data-root \"$QSL_DATA_ROOT\" \
--log-level \"$QSL_LOG_LEVEL\""\
]