# Dockerfile with China mirrors for faster builds # Usage: docker build -f Dockerfile.china -t qquiz-backend . FROM python:3.11-slim WORKDIR /app # Use Alibaba Cloud mirror for faster apt-get RUN sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list.d/debian.sources 2>/dev/null || \ sed -i 's/deb.debian.org/mirrors.aliyun.com/g' /etc/apt/sources.list || true # Install system dependencies (gcc for compiling Python packages) RUN apt-get update && apt-get install -y --no-install-recommends \ gcc \ && rm -rf /var/lib/apt/lists/* # Copy requirements and install Python dependencies COPY requirements.txt . # Use Tsinghua PyPI mirror for faster pip install RUN pip install --no-cache-dir -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt # Copy application code COPY . . # Create uploads directory RUN mkdir -p uploads # Expose port EXPOSE 8000 # Run database migrations and start server CMD alembic upgrade head && uvicorn main:app --host 0.0.0.0 --port 8000