spacesedan commited on
Commit
cba823e
·
1 Parent(s): 0bda3c0
Files changed (3) hide show
  1. Dockerfile +11 -0
  2. download_nltk_data.py +5 -0
  3. requirements.txt +1 -0
Dockerfile CHANGED
@@ -1,14 +1,25 @@
1
  FROM python:3.9
2
 
 
3
  RUN useradd -m -u 1000 user
4
  USER user
5
  ENV PATH="/home/user/.local/bin:$PATH"
 
6
 
 
7
  WORKDIR /app
8
 
 
9
  COPY --chown=user requirements.txt .
10
  RUN pip install --no-cache-dir --upgrade -r requirements.txt
11
 
 
 
 
 
 
 
12
  COPY --chown=user . /app
13
 
 
14
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
 
1
  FROM python:3.9
2
 
3
+ # Create user
4
  RUN useradd -m -u 1000 user
5
  USER user
6
  ENV PATH="/home/user/.local/bin:$PATH"
7
+ ENV NLTK_DATA="/home/user/nltk_data"
8
 
9
+ # Set working directory
10
  WORKDIR /app
11
 
12
+ # Copy requirements and install
13
  COPY --chown=user requirements.txt .
14
  RUN pip install --no-cache-dir --upgrade -r requirements.txt
15
 
16
+ # Create nltk_data directory and download punkt
17
+ RUN mkdir -p $NLTK_DATA
18
+ COPY --chown=user download_nltk_data.py .
19
+ RUN python download_nltk_data.py && rm download_nltk_data.py
20
+
21
+ # Copy the rest of the app
22
  COPY --chown=user . /app
23
 
24
+ # Start the app
25
  CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "7860"]
download_nltk_data.py ADDED
@@ -0,0 +1,5 @@
 
 
 
 
 
 
1
+ import nltk
2
+ import os
3
+
4
+ nltk_data_path = os.getenv("NLTK_DATA", "/home/user/nltk_data")
5
+ nltk.download("punkt", download_dir=nltk_data_path)
requirements.txt CHANGED
@@ -2,4 +2,5 @@ fastapi
2
  uvicorn[standard]
3
  transformers
4
  torch
 
5
  pydantic
 
2
  uvicorn[standard]
3
  transformers
4
  torch
5
+ nltk
6
  pydantic