help-desk/backend/Dockerfile
2025-11-18 21:53:33 +00:00

25 lines
959 B
Docker

# 1. BASE IMAGE
FROM python:3.11-slim
ENV PYTHONDONTWRITEBYTECODE 1
ENV PYTHONUNBUFFERED 1 # เพื่อให้ Log แสดงผลทันที
# 2. WORK DIRECTORY
WORKDIR /app
# 3. DEPENDENCIES: Copy และติดตั้ง (ใช้ประโยชน์จาก Docker Layer Caching)
COPY requirements.txt /app/
RUN pip install --no-cache-dir -r requirements.txt
# 4. ENTRYPOINT SCRIPT: Copy และกำหนดสิทธิ์รัน (ใช้สำหรับ Startup Automation)
COPY docker-entrypoint.sh /usr/local/bin/
RUN chmod +x /usr/local/bin/docker-entrypoint.sh
# 5. CODE: คัดลอกโค้ดโปรเจกต์ที่เหลือทั้งหมดมาไว้ใน /app
COPY . /app/
# 6. EXPOSE:
EXPOSE 8000
# 7. ENTRYPOINT/CMD: กำหนด Entrypoint หลัก
ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
CMD ["python", "manage.py", "runserver", "0.0.0.0:8000"]