From a55c182be9b98d267eb5cd06e2e5f394c8d6b6a1 Mon Sep 17 00:00:00 2001 From: ZGaetano Date: Wed, 20 May 2026 14:19:02 -0400 Subject: [PATCH] =?UTF-8?q?feat:=20docker-compose.gpu.yml=20overlay=20?= =?UTF-8?q?=E2=80=94=20NVIDIA=20GPU=20pass-through=20+=20NVENC=20worker?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docker-compose.gpu.yml | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 docker-compose.gpu.yml diff --git a/docker-compose.gpu.yml b/docker-compose.gpu.yml new file mode 100644 index 0000000..e26eeb9 --- /dev/null +++ b/docker-compose.gpu.yml @@ -0,0 +1,33 @@ +# Wild Dragon MAM — GPU overlay +# Apply on top of docker-compose.yml on nodes with NVIDIA GPUs. +# +# Prerequisites: NVIDIA Container Toolkit installed on the host. +# Install: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/ +# +# Usage (core MAM node with GPUs): +# docker compose -f docker-compose.yml -f docker-compose.gpu.yml up -d +# +# Usage (worker node with GPUs): +# docker compose -f docker-compose.worker.yml -f docker-compose.gpu.yml --profile worker up -d +# +# This overlay: +# - Rebuilds worker from Dockerfile.gpu (CUDA base + ffmpeg NVENC) +# - Passes all NVIDIA GPUs into the worker container +# - Sets NVENC_ENABLED=true so the worker prioritises h264_nvenc/hevc_nvenc + +services: + worker: + build: + context: ./services/worker + dockerfile: Dockerfile.gpu + deploy: + resources: + reservations: + devices: + - driver: nvidia + count: all + capabilities: [gpu] + environment: + NVENC_ENABLED: "true" + NVIDIA_VISIBLE_DEVICES: all + NVIDIA_DRIVER_CAPABILITIES: video,compute,utility