# BiRefNet background removal service — installs the published package on the CUDA 12.6 runtime. # Same CUDA base family as the main ../Dockerfile, but installs rmbg-as-a-service from TestPyPI # with a plain pip rather than building from the local source tree. FROM nvidia/cuda:12.6.1-cudnn-runtime-ubuntu24.04 ENV DEBIAN_FRONTEND=noninteractive \ PYTHONUNBUFFERED=1 \ PIP_BREAK_SYSTEM_PACKAGES=1 \ HF_HOME=/app/hf_cache \ HF_HUB_ENABLE_HF_TRANSFER=1 \ PORT=8000 # Ubuntu 24.04 ships Python 3.12 (the project requires >=3.12). RUN apt-get update \ && apt-get install -y --no-install-recommends python3 python3-pip ca-certificates \ && rm -rf /var/lib/apt/lists/* # Fetch only the rmbg-as-a-service wheel from TestPyPI (--no-deps), so TestPyPI never takes # part in dependency resolution -- otherwise junk squatted packages there (e.g. "FASTAPI") # outrank the real ones. Then install it with real PyPI as the index, CUDA torch from the # PyTorch index (its +cu126 build outranks the plain wheel by local-version ordering). RUN pip download --no-deps --dest /tmp/pkg \ --index-url https://test.pypi.org/simple/ \ "rmbg-as-a-service==0.0.2" \ && pip install \ --extra-index-url https://download.pytorch.org/whl/cu126 \ /tmp/pkg/*.whl hf-transfer \ && rm -rf /tmp/pkg EXPOSE 8000 CMD ["rmbg-as-a-service"]