doeqoth commited on
Commit
46d54ad
·
verified ·
1 Parent(s): 25b126e

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +32 -0
Dockerfile CHANGED
@@ -1,3 +1,9 @@
 
 
 
 
 
 
1
  RUN apt-get update && apt-get install -y --no-install-recommends \
2
  wget curl git build-essential cmake pkg-config \
3
  libcairo2-dev libpango1.0-dev libfreetype6-dev libglib2.0-dev \
@@ -6,3 +12,29 @@ RUN apt-get update && apt-get install -y --no-install-recommends \
6
  fontforge \
7
  fonts-dejavu fonts-liberation fonts-noto fonts-noto-cjk fonts-thai-tlwg \
8
  && rm -rf /var/lib/apt/lists/* && apt-get clean
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ FROM python:3.10-slim
2
+
3
+ ENV DEBIAN_FRONTEND=noninteractive
4
+ WORKDIR /home/user/app
5
+
6
+ # System deps
7
  RUN apt-get update && apt-get install -y --no-install-recommends \
8
  wget curl git build-essential cmake pkg-config \
9
  libcairo2-dev libpango1.0-dev libfreetype6-dev libglib2.0-dev \
 
12
  fontforge \
13
  fonts-dejavu fonts-liberation fonts-noto fonts-noto-cjk fonts-thai-tlwg \
14
  && rm -rf /var/lib/apt/lists/* && apt-get clean
15
+
16
+ # Build pdf2htmlEX from source
17
+ RUN git clone --depth 1 https://github.com/pdf2htmlEX/pdf2htmlEX.git /tmp/pdf2htmlEX \
18
+ && cd /tmp/pdf2htmlEX \
19
+ && mkdir build && cd build \
20
+ && cmake .. -DCMAKE_INSTALL_PREFIX=/usr \
21
+ && make -j"$(nproc)" \
22
+ && make install \
23
+ && rm -rf /tmp/pdf2htmlEX
24
+
25
+ # Create non-root user
26
+ RUN useradd -m -u 1000 user
27
+ USER user
28
+
29
+ # Python deps
30
+ COPY --chown=user:user requirements.txt .
31
+ RUN pip install --no-cache-dir --upgrade pip \
32
+ && pip install --no-cache-dir -r requirements.txt
33
+
34
+ # App code
35
+ COPY --chown=user:user . .
36
+
37
+ RUN mkdir -p /home/user/app/temp /home/user/app/output
38
+
39
+ EXPOSE 7860
40
+ CMD ["python", "app.py"]