FROM python:3.12-slim WORKDIR /app ENV PYTHONPATH=/app ENV PIP_INDEX_URL=https://mirrors.aliyun.com/pypi/simple/ ENV PIP_TRUSTED_HOST=mirrors.aliyun.com COPY requirements.txt ./ RUN set -eux; \ sed -i 's|http://deb.debian.org/debian|https://mirrors.aliyun.com/debian|g; s|http://deb.debian.org/debian-security|https://mirrors.aliyun.com/debian-security|g' /etc/apt/sources.list.d/debian.sources; \ apt-get -o Acquire::http::Timeout=30 -o Acquire::https::Timeout=30 update; \ apt-get -o Acquire::http::Timeout=30 -o Acquire::https::Timeout=30 install -y --no-install-recommends ffmpeg; \ rm -rf /var/lib/apt/lists/*; \ python -m pip install --upgrade pip setuptools wheel; \ pip install --no-cache-dir --default-timeout=120 --retries 10 -r requirements.txt COPY apps/worker /app/apps/worker COPY packages /app/packages COPY scripts /app/scripts COPY alembic /app/alembic COPY alembic.ini /app/alembic.ini WORKDIR /app/apps/worker CMD ["sh", "-c", "celery -A worker_app.celery_app.celery_app worker --loglevel=info --concurrency=${WORKER_CONCURRENCY:-1} --max-tasks-per-child=${WORKER_MAX_TASKS_PER_CHILD:-100}"]