File size: 968 Bytes
0fc62c4 24e1f38 0fc62c4 24e1f38 0fc62c4 24e1f38 0fc62c4 24e1f38 0fc62c4 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# Use an official Python runtime
FROM python:3.9-slim
# Set environment variables
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1
ENV NLTK_DATA /app/nltk_data
# Set working directory
WORKDIR /app
# Install system dependencies
RUN apt-get update && apt-get install -y \
build-essential \
&& rm -rf /var/lib/apt/lists/*
# Create NLTK data directory
RUN mkdir -p /app/nltk_data
# Copy dependency files
COPY requirements.txt .
# Install Python dependencies
RUN pip install -r requirements.txt
# Download NLTK data to the correct directory
RUN python -c "import nltk; nltk.download('wordnet', download_dir='/app/nltk_data'); \
nltk.download('punkt', download_dir='/app/nltk_data'); \
nltk.download('averaged_perceptron_tagger', download_dir='/app/nltk_data'); \
nltk.download('stopwords', download_dir='/app/nltk_data')"
# Copy the rest of the app
COPY . .
# Expose port
EXPOSE 7860
# Run the app
CMD gunicorn --bind 0.0.0.0:7860 app:app
|