Skip to content

Commit 9ca7caa

Browse files
blues-manclaude
andcommitted
Add comprehensive Podman support alongside Docker instructions
- Add Podman installation and deployment instructions in separate source blocks - Update container deployment sections to include both Docker and Podman examples - Add Podman Compose alternatives for all Docker Compose configurations - Include proper GPU device syntax for Podman (--device nvidia.com/gpu=all) - Maintain separate configuration files for Docker and Podman compose setups 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
1 parent 3e7ba20 commit 9ca7caa

File tree

3 files changed

+119
-5
lines changed

3 files changed

+119
-5
lines changed

documentation/modules/ROOT/pages/01-setup.adoc

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -79,10 +79,12 @@ cd vllm
7979
pip install -e .
8080
----
8181

82-
=== Method 4: Docker Installation
82+
=== Method 4: Container Installation
8383

8484
For containerized deployment:
8585

86+
**Docker:**
87+
8688
[.console-input]
8789
[source,bash,subs="+macros,+attributes"]
8890
----
@@ -96,6 +98,21 @@ docker run --gpus all \
9698
--model microsoft/DialoGPT-medium
9799
----
98100

101+
**Podman:**
102+
103+
[.console-input]
104+
[source,bash,subs="+macros,+attributes"]
105+
----
106+
# Pull the official vLLM image
107+
podman pull vllm/vllm-openai:latest
108+
109+
# Run with GPU support
110+
podman run --device nvidia.com/gpu=all \
111+
-p 8000:8000 \
112+
vllm/vllm-openai:latest \
113+
--model microsoft/DialoGPT-medium
114+
----
115+
99116
[#verification]
100117
== Verify Installation
101118

documentation/modules/ROOT/pages/02-deploy.adoc

Lines changed: 58 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -179,11 +179,13 @@ curl http://localhost:8000/v1/completions \
179179
----
180180

181181
[#docker]
182-
== Docker Deployment
182+
== Container Deployment
183183

184-
For production deployments, Docker provides a convenient way to run vLLM:
184+
For production deployments, containers provide a convenient way to run vLLM:
185185

186-
=== Basic Docker Setup
186+
=== Basic Container Setup
187+
188+
**Docker:**
187189

188190
[.console-input]
189191
[source,bash,subs="+macros,+attributes"]
@@ -201,7 +203,27 @@ docker run --gpus all \
201203
--port 8000
202204
----
203205

204-
=== Docker Compose
206+
**Podman:**
207+
208+
[.console-input]
209+
[source,bash,subs="+macros,+attributes"]
210+
----
211+
# Pull the official image
212+
podman pull vllm/vllm-openai:latest
213+
214+
# Run with GPU support
215+
podman run --device nvidia.com/gpu=all \
216+
-p 8000:8000 \
217+
-v ~/.cache/huggingface:/root/.cache/huggingface \
218+
vllm/vllm-openai:latest \
219+
--model microsoft/DialoGPT-medium \
220+
--host 0.0.0.0 \
221+
--port 8000
222+
----
223+
224+
=== Container Compose
225+
226+
**Docker Compose:**
205227

206228
Create a `docker-compose.yml` file:
207229

@@ -238,6 +260,38 @@ Then run:
238260
docker-compose up -d
239261
----
240262

263+
**Podman Compose:**
264+
265+
Create a `podman-compose.yml` file:
266+
267+
[.console-input]
268+
[source,yaml,subs="+macros,+attributes"]
269+
----
270+
version: '3.8'
271+
services:
272+
vllm:
273+
image: vllm/vllm-openai:latest
274+
ports:
275+
- "8000:8000"
276+
volumes:
277+
- ~/.cache/huggingface:/root/.cache/huggingface
278+
command: >
279+
--model microsoft/DialoGPT-medium
280+
--host 0.0.0.0
281+
--port 8000
282+
--tensor-parallel-size 1
283+
devices:
284+
- nvidia.com/gpu=all
285+
----
286+
287+
Then run:
288+
289+
[.console-input]
290+
[source,bash,subs="+macros,+attributes"]
291+
----
292+
podman-compose up -d
293+
----
294+
241295
[#monitoring]
242296
== Monitoring and Health Checks
243297

documentation/modules/ROOT/pages/03-advanced.adoc

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,8 @@ if __name__ == "__main__":
365365

366366
Deploy multiple vLLM instances behind a load balancer:
367367

368+
**Docker Compose:**
369+
368370
[.console-input]
369371
[source,yaml,subs="+macros,+attributes"]
370372
----
@@ -414,6 +416,47 @@ services:
414416
- vllm-node-2
415417
----
416418

419+
**Podman Compose:**
420+
421+
[.console-input]
422+
[source,yaml,subs="+macros,+attributes"]
423+
----
424+
# podman-compose-cluster.yml
425+
version: '3.8'
426+
services:
427+
vllm-node-1:
428+
image: vllm/vllm-openai:latest
429+
ports:
430+
- "8001:8000"
431+
command: >
432+
--model microsoft/DialoGPT-medium
433+
--host 0.0.0.0
434+
--port 8000
435+
devices:
436+
- nvidia.com/gpu=0
437+
438+
vllm-node-2:
439+
image: vllm/vllm-openai:latest
440+
ports:
441+
- "8002:8000"
442+
command: >
443+
--model microsoft/DialoGPT-medium
444+
--host 0.0.0.0
445+
--port 8000
446+
devices:
447+
- nvidia.com/gpu=1
448+
449+
nginx:
450+
image: nginx:alpine
451+
ports:
452+
- "8000:80"
453+
volumes:
454+
- ./nginx.conf:/etc/nginx/nginx.conf
455+
depends_on:
456+
- vllm-node-1
457+
- vllm-node-2
458+
----
459+
417460
=== Load Balancer Configuration
418461

419462
Create `nginx.conf`:

0 commit comments

Comments
 (0)