Skip to content

Commit 06d999b

Browse files
authored
Merge pull request #614 from axel7083/docs/quick-start/podman-kube-play
docs(quick-start): adding instructions for Podman Kube Play
2 parents 292b641 + 4a86cec commit 06d999b

2 files changed

Lines changed: 76 additions & 0 deletions

File tree

docs/getting-started/quick-start/index.mdx

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ import { TopBanners } from "@site/src/components/TopBanners";
99

1010
import DockerCompose from './tab-docker/DockerCompose.md';
1111
import Podman from './tab-docker/Podman.md';
12+
import PodmanKubePlay from './tab-docker/PodmanKubePlay.md';
1213
import ManualDocker from './tab-docker/ManualDocker.md';
1314
import DockerSwarm from './tab-docker/DockerSwarm.md';
1415
import DockerUpdating from './tab-docker/DockerUpdating.md';
@@ -59,6 +60,12 @@ Choose your preferred installation method below:
5960
</div>
6061
</TabItem>
6162

63+
<TabItem value="podman-kube-play" label="Podman Kube Play">
64+
<div className='mt-5'>
65+
<PodmanKubePlay />
66+
</div>
67+
</TabItem>
68+
6269
<TabItem value="swarm" label="Docker Swarm">
6370
<div className='mt-5'>
6471
<DockerSwarm />
Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Podman Kube Play Setup
2+
3+
Podman supports Kubernetes like-syntax for deploying resources such as pods, volumes without having the overhead of a full Kubernetes cluster. [More about Kube Play](https://docs.podman.io/en/latest/markdown/podman-kube-play.1.html).
4+
5+
If you don't have Podman installed, check out [Podman's official website](https://podman.io/docs/installation).
6+
7+
## Example `play.yaml`
8+
9+
Here is an example of a Podman Kube Play file to deploy:
10+
11+
```yaml
12+
apiVersion: v1
13+
kind: Pod
14+
metadata:
15+
name: open-webui
16+
spec:
17+
containers:
18+
- name: container
19+
image: ghcr.io/open-webui/open-webui:main
20+
ports:
21+
- name: http
22+
containerPort: 8080
23+
hostPort: 3000
24+
volumeMounts:
25+
- mountPath: /app/backend/data
26+
name: data
27+
volumes:
28+
- name: data
29+
persistentVolumeClaim:
30+
claimName: open-webui-pvc
31+
---
32+
apiVersion: v1
33+
kind: PersistentVolumeClaim
34+
metadata:
35+
name: open-webui-pvc
36+
spec:
37+
accessModes:
38+
- ReadWriteOnce
39+
resources:
40+
requests:
41+
storage: 5Gi
42+
```
43+
44+
## Starting
45+
46+
To start your pod, run the following command:
47+
48+
```bash
49+
podman kube play ./play.yaml
50+
```
51+
52+
## Using GPU Support
53+
54+
For Nvidia GPU support, you need to replace the container image with `ghcr.io/open-webui/open-webui:cuda` and need to specify the device (GPU) required in the pod resources limits as followed:
55+
56+
```yaml
57+
[...]
58+
resources:
59+
limits:
60+
nvidia.com/gpu=all: 1
61+
[...]
62+
```
63+
64+
:::important
65+
66+
To successfully have the open-webui container access the GPU(s),
67+
you will need to have the Container Device Interface (CDI) for the GPU you wish to access installed in your Podman Machine. You can check [Podman GPU container access](https://podman-desktop.io/docs/podman/gpu).
68+
69+
:::

0 commit comments

Comments
 (0)