ABDALLALSWAITI commited on
Commit
4fa97a7
·
verified ·
1 Parent(s): cb75e86

Update Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +68 -1
Dockerfile CHANGED
@@ -31,6 +31,70 @@ RUN apt-get update && apt-get install -y \
31
  && apt-get install -y nodejs \
32
  && rm -rf /var/lib/apt/lists/*
33
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
34
  # Copy package files
35
  COPY requirements.txt ./
36
  COPY package.json ./
@@ -46,9 +110,12 @@ COPY src/ ./src/
46
  # Set environment variables
47
  ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
48
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
 
 
 
49
 
50
  EXPOSE 8501
51
 
52
  HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
53
 
54
- ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]
 
31
  && apt-get install -y nodejs \
32
  && rm -rf /var/lib/apt/lists/*
33
 
34
+ # Create necessary directories with proper permissions
35
+ RUN mkdir -p /tmp/.streamlit /app/.streamlit && \
36
+ chmod -R 777 /tmp/.streamlit /app/.streamlit
37
+
38
+ # Copy package files
39
+ COPY requirements.txt ./
40
+ COPY package.json ./
41
+
42
+ # Install dependencies
43
+ RUN pip3 install -r requirements.txt
44
+ RUN npm install
45
+
46
+ # Copy application files
47
+ COPY puppeteer_pdf.js ./
48
+ COPY src/ ./src/
49
+
50
+ # Set environment variables
51
+ ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
52
+ ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
53
+ ENV STREAMLIT_SERVER_HEADLESS=true
54
+ ENV STREAMLIT_SERVER_FILE_WATCHER_TYPE=none
55
+ ENV HOME=/tmp
56
+
57
+ EXPOSE 8501
58
+
59
+ HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
60
+
61
+ ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]FROM python:3.13.5-slim
62
+
63
+ WORKDIR /app
64
+
65
+ # Install Node.js and system dependencies
66
+ RUN apt-get update && apt-get install -y \
67
+ build-essential \
68
+ curl \
69
+ git \
70
+ chromium \
71
+ fonts-liberation \
72
+ libasound2 \
73
+ libatk-bridge2.0-0 \
74
+ libatk1.0-0 \
75
+ libcups2 \
76
+ libdbus-1-3 \
77
+ libdrm2 \
78
+ libgbm1 \
79
+ libgtk-3-0 \
80
+ libnspr4 \
81
+ libnss3 \
82
+ libxcomposite1 \
83
+ libxdamage1 \
84
+ libxfixes3 \
85
+ libxkbcommon0 \
86
+ libxrandr2 \
87
+ xdg-utils \
88
+ ca-certificates \
89
+ fonts-freefont-ttf \
90
+ && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
91
+ && apt-get install -y nodejs \
92
+ && rm -rf /var/lib/apt/lists/*
93
+
94
+ # Create necessary directories with proper permissions
95
+ RUN mkdir -p /tmp/.streamlit /app/.streamlit && \
96
+ chmod -R 777 /tmp/.streamlit /app/.streamlit
97
+
98
  # Copy package files
99
  COPY requirements.txt ./
100
  COPY package.json ./
 
110
  # Set environment variables
111
  ENV PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
112
  ENV PUPPETEER_EXECUTABLE_PATH=/usr/bin/chromium
113
+ ENV STREAMLIT_SERVER_HEADLESS=true
114
+ ENV STREAMLIT_SERVER_FILE_WATCHER_TYPE=none
115
+ ENV HOME=/tmp
116
 
117
  EXPOSE 8501
118
 
119
  HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
120
 
121
+ ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]