MineLit / Dockerfile
noranisa's picture
Update Dockerfile
46f5725 verified
Raw
History Blame Contribute Delete
952 Bytes
# 1. Gunakan base image Python yang ringan
FROM python:3.9-slim
# 2. Tetapkan ENV untuk matplotlib dan NLTK
# Ini memberitahu NLTK di mana harus mencari dan menyimpan data
ENV MPLCONFIGDIR /tmp
ENV NLTK_DATA /app/nltk_data
# 3. Tetapkan direktori kerja di dalam container
WORKDIR /app
# 4. Salin file requirements terlebih dahulu untuk caching layer
COPY requirements.txt .
# 5. Install semua dependensi Python
RUN pip install --no-cache-dir -r requirements.txt
# --- PERBAIKAN UTAMA DI SINI ---
# 6. Unduh data NLTK yang diperlukan selama proses build.
# NLTK akan menggunakan ENV NLTK_DATA dan menyimpannya di /app/nltk_data
RUN python -m nltk.downloader stopwords
# 7. Salin sisa kode aplikasi ke dalam container
COPY . .
# 8. Expose port yang akan digunakan oleh Hugging Face (wajib 7860)
EXPOSE 7860
# 9. Perintah untuk menjalankan aplikasi menggunakan Gunicorn
CMD ["gunicorn", "--bind", "0.0.0.0:7860", "--workers", "1", "app:app"]