Kolesnikov Dmitry commited on
Commit
8afe88e
·
1 Parent(s): 840262e

fix: Изменённый Dockerfile

Browse files
Files changed (1) hide show
  1. Dockerfile +20 -5
Dockerfile CHANGED
@@ -1,19 +1,34 @@
1
- FROM python:3.13.5-slim
 
2
 
3
  WORKDIR /app
4
 
 
5
  RUN apt-get update && apt-get install -y \
6
  build-essential \
 
7
  curl \
8
  git \
9
  && rm -rf /var/lib/apt/lists/*
10
 
11
- COPY . .
 
 
 
 
 
 
 
12
 
13
- RUN pip3 install -r requirements.txt
 
 
 
 
 
14
 
15
  EXPOSE 8501
16
 
17
- HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health
18
 
19
- ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]
 
1
+ # Dockerfile.recommended
2
+ FROM python:3.11-slim
3
 
4
  WORKDIR /app
5
 
6
+ # системные зависимости для сборки некоторых пакетов
7
  RUN apt-get update && apt-get install -y \
8
  build-essential \
9
+ python3-dev \
10
  curl \
11
  git \
12
  && rm -rf /var/lib/apt/lists/*
13
 
14
+ # апгрейд pip/setuptools/wheel и базовые бинарные зависимости
15
+ RUN python -m pip install --upgrade pip setuptools wheel
16
+
17
+ # заранее ставим numpy и cython — уменьшает вероятность падений в build-time
18
+ RUN python -m pip install numpy cython
19
+
20
+ # скопируем только requirements сначала — это улучшит кэширование сборки
21
+ COPY requirements.txt .
22
 
23
+ # если в requirements есть 'glove' — лучше заменить на glove-python-binary,
24
+ # но эта команда оставит requirements как есть
25
+ RUN python -m pip install --no-cache-dir -r requirements.txt
26
+
27
+ # затем копируем всё приложение
28
+ COPY . .
29
 
30
  EXPOSE 8501
31
 
32
+ HEALTHCHECK CMD curl --fail http://localhost:8501/_stcore/health || exit 1
33
 
34
+ ENTRYPOINT ["streamlit", "run", "src/streamlit_app.py", "--server.port=8501", "--server.address=0.0.0.0"]