33 lines
1.4 KiB
Docker
33 lines
1.4 KiB
Docker
# 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 --mount=type=cache,target=/root/.cache/pip \
|
|
pip download --no-deps --dest /tmp/pkg \
|
|
--index-url https://test.pypi.org/simple/ \
|
|
"rmbg-as-a-service==0.0.3" \
|
|
&& 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"]
|