FROM python:3.11-slim-bookworm RUN apt-get update && apt-get install -y --no-install-recommends \ patchelf libpq-dev gcc git curl wget \ && rm -rf /var/lib/apt/lists/* ENV PYTHONUNBUFFERED=1 \ PIP_DISABLE_PIP_VERSION_CHECK=1 \ TOKENIZERS_PARALLELISM=false \ HF_HOME=/root/.cache/huggingface WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir --upgrade pip # Install PyTorch with CUDA support (cu118 for broader compatibility) RUN pip install --no-cache-dir torch==2.1.0 torchvision==0.16.0 --index-url https://download.pytorch.org/whl/cu118 RUN pip install --no-cache-dir \ ctranslate2==3.24.0 \ sentencepiece \ transformers==4.36.0 \ protobuf==3.20.3 \ "numpy<2" \ psycopg2-binary \ langdetect # Fix executable stack RUN find /usr/local/lib/python3.11/site-packages/ctranslate2* \ -name "libctranslate2-*.so.*" -o -name "libctranslate2.so*" | \ xargs -I {} patchelf --clear-execstack {} || true COPY workers/ ./workers/ COPY init-db/ ./init-db/ COPY migrations/ ./migrations/ ENV DB_HOST=db ENV DB_PORT=5432 ENV DB_NAME=rss ENV DB_USER=rss ENV DB_PASS=x # GPU Configuration - Override with: docker run --gpus all ENV CT2_DEVICE=cuda ENV CT2_COMPUTE_TYPE=float16 CMD ["python", "-m", "workers.ctranslator_worker"]