|
|
|
|
|
FROM python:3.13-slim |
|
|
|
|
|
|
|
|
RUN apt-get update && \ |
|
|
apt-get install -y redis-server && \ |
|
|
apt-get clean && \ |
|
|
rm -rf /var/lib/apt/lists/* |
|
|
|
|
|
|
|
|
WORKDIR /app |
|
|
|
|
|
|
|
|
COPY requirements.txt . |
|
|
|
|
|
|
|
|
RUN pip install --no-cache-dir -r requirements.txt waitress |
|
|
|
|
|
|
|
|
COPY . . |
|
|
|
|
|
|
|
|
RUN mkdir -p /data/redis |
|
|
|
|
|
|
|
|
ENV HOST=0.0.0.0 \ |
|
|
PORT=7000 \ |
|
|
VERIFY_SSL=true \ |
|
|
MAX_QUEUE_SIZE=100 \ |
|
|
FLASK_ENV=production \ |
|
|
FLASK_APP=app.py \ |
|
|
CELERY_BROKER_URL=redis://localhost:6379/0 \ |
|
|
CELERY_RESULT_BACKEND=redis://localhost:6379/0 |
|
|
|
|
|
|
|
|
EXPOSE 7000 6379 |
|
|
|
|
|
|
|
|
COPY docker-entrypoint.sh /usr/local/bin/ |
|
|
RUN chmod +x /usr/local/bin/docker-entrypoint.sh |
|
|
|
|
|
|
|
|
ENTRYPOINT ["docker-entrypoint.sh"] |