summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkj_sh6042026-02-13 23:38:05 -0500
committerkj_sh6042026-02-13 23:38:05 -0500
commiteaf6b4a594c9a42076caf5766d08b40019a77b78 (patch)
treeaa20fcf16f9ebf2e231e5a3864164e527c5ca61e
parent1f1abae197f3fd58da2c3ab7a0a198bec3bbb847 (diff)
feat: docker 🚢🙂
-rw-r--r--Dockerfile40
1 files changed, 40 insertions, 0 deletions
diff --git a/Dockerfile b/Dockerfile
new file mode 100644
index 0000000..8fe61b3
--- /dev/null
+++ b/Dockerfile
@@ -0,0 +1,40 @@
1FROM ubuntu:24.04
2
3ENV PYTHONUNBUFFERED=1
4
5# system deps + libreoffice fresh ppa
6RUN apt-get update && \
7 apt-get install -y --no-install-recommends \
8 software-properties-common \
9 ca-certificates && \
10 add-apt-repository -y ppa:libreoffice/ppa && \
11 apt-get update && \
12 apt-get install -y --no-install-recommends \
13 python3 \
14 python3-pip \
15 python3-venv \
16 libreoffice \
17 poppler-utils \
18 fonts-liberation \
19 fonts-dejavu-core && \
20 apt-get clean && \
21 rm -rf /var/lib/apt/lists/*
22
23# python deps
24COPY src/requirements.txt /tmp/requirements.txt
25RUN pip3 install --no-cache-dir --break-system-packages -r /tmp/requirements.txt
26
27# kjandoc binary -> /usr/local/bin
28COPY src/kjandoc /usr/local/bin/kjandoc
29RUN chmod +x /usr/local/bin/kjandoc
30
31# demoware
32WORKDIR /app
33COPY demoware/ /app/
34
35# storage dirs
36RUN mkdir -p /app/uploads /app/output
37
38EXPOSE 8080
39
40CMD ["python3", "server.py"] \ No newline at end of file