From 828a897f2f8bfcbdff05f0a03bd9d5c5ad25a9d8 Mon Sep 17 00:00:00 2001 From: Kevin Nause Date: Mon, 2 Mar 2026 20:37:34 -0500 Subject: [PATCH] CUDA Dockerfile --- .github/workflows/build.yml | 2 +- Dockerfile.cuda | 25 +++++++++++++++++++++++++ 2 files changed, 26 insertions(+), 1 deletion(-) create mode 100644 Dockerfile.cuda diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 666887d90..ccd9f36e0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -162,7 +162,7 @@ jobs: strategy: matrix: - variant: [musa, sycl, vulkan] + variant: [musa, sycl, vulkan, cuda] env: REGISTRY: ghcr.io diff --git a/Dockerfile.cuda b/Dockerfile.cuda new file mode 100644 index 000000000..13fef89a4 --- /dev/null +++ b/Dockerfile.cuda @@ -0,0 +1,25 @@ +ARG CUDA_VERSION=12.6.3 +ARG UBUNTU_VERSION=24.04 + +FROM nvidia/cuda:${CUDA_VERSION}-cudnn-devel-ubuntu${UBUNTU_VERSION} AS build + +RUN apt-get update && apt-get install -y --no-install-recommends build-essential git ccache cmake + +WORKDIR /sd.cpp + +COPY . . + +ARG CUDACXX=/usr/local/cuda/bin/nvcc +RUN cmake . -B ./build -DSD_CUDA=ON +RUN cmake --build ./build --config Release --parallel + +FROM nvidia/cuda:${CUDA_VERSION}-cudnn-runtime-ubuntu${UBUNTU_VERSION} AS runtime + +RUN apt-get update && \ + apt-get install --yes --no-install-recommends libgomp1 && \ + apt-get clean + +COPY --from=build /sd.cpp/build/bin/sd-cli /sd-cli +COPY --from=build /sd.cpp/build/bin/sd-server /sd-server + +ENTRYPOINT [ "/sd-cli" ]