aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-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 @@
+FROM ubuntu:24.04
+
+ENV PYTHONUNBUFFERED=1
+
+# system deps + libreoffice fresh ppa
+RUN apt-get update && \
+ apt-get install -y --no-install-recommends \
+ software-properties-common \
+ ca-certificates && \
+ add-apt-repository -y ppa:libreoffice/ppa && \
+ apt-get update && \
+ apt-get install -y --no-install-recommends \
+ python3 \
+ python3-pip \
+ python3-venv \
+ libreoffice \
+ poppler-utils \
+ fonts-liberation \
+ fonts-dejavu-core && \
+ apt-get clean && \
+ rm -rf /var/lib/apt/lists/*
+
+# python deps
+COPY src/requirements.txt /tmp/requirements.txt
+RUN pip3 install --no-cache-dir --break-system-packages -r /tmp/requirements.txt
+
+# kjandoc binary -> /usr/local/bin
+COPY src/kjandoc /usr/local/bin/kjandoc
+RUN chmod +x /usr/local/bin/kjandoc
+
+# demoware
+WORKDIR /app
+COPY demoware/ /app/
+
+# storage dirs
+RUN mkdir -p /app/uploads /app/output
+
+EXPOSE 8080
+
+CMD ["python3", "server.py"] \ No newline at end of file