Files
Javier Martinez 183cd03857 feat!: PrivateGPT revamp v1 (#2230)
* feat!: PrivateGPT revamp v1

* chore(docs): update nodejs
2026-06-02 16:55:46 +02:00

105 lines
2.5 KiB
Plaintext

---
title: "Docker"
description: "Run PrivateGPT with Docker — isolated, reproducible, production-ready."
---
The published Docker image installs the `core` package by default:
```text
zylonai/private-gpt:latest
```
---
## Auto mode
Point PrivateGPT at your LLM server. Models are discovered automatically — no config file needed.
<Steps>
<Step title="Start your LLM server">
Make sure your LLM server is running. See [Providers](/providers/overview) for setup guides.
</Step>
<Step title="Run the container">
<Tabs>
<Tab title="macOS / Linux">
```bash
docker run -p 8080:8080 \
-e OPENAI_API_BASE=http://host.docker.internal:11434/v1 \
zylonai/private-gpt:latest
```
</Tab>
<Tab title="Windows (PowerShell)">
```powershell
docker run -p 8080:8080 `
-e OPENAI_API_BASE=http://host.docker.internal:11434/v1 `
zylonai/private-gpt:latest
```
</Tab>
</Tabs>
<Note>
`host.docker.internal` resolves to the host machine from inside Docker on macOS and Windows. On Linux, use `--network host` and `http://localhost:11434/v1` instead.
</Note>
```bash
# Linux alternative
docker run --network host \
-e OPENAI_API_BASE=http://localhost:11434/v1 \
zylonai/private-gpt:latest
```
</Step>
<Step title="Open the UI">
Navigate to [http://localhost:8080/ui](http://localhost:8080/ui).
</Step>
</Steps>
### Passing an API key
If your LLM server requires authentication:
```bash
docker run -p 8080:8080 \
-e OPENAI_API_BASE=http://host.docker.internal:8000/v1 \
-e OPENAI_API_KEY=your-api-key \
zylonai/private-gpt:latest
```
---
## Build locally
If you want to build the image from source (e.g. after code changes):
<Accordion title="Build from source">
```bash
git clone https://github.com/zylon-ai/private-gpt
cd private-gpt
docker build -t private-gpt .
```
Then replace `zylonai/private-gpt:latest` with `private-gpt` in any `docker run` command above.
To add optional features when building your own image, pass explicit extras:
```bash
docker build \
--build-arg EXTRAS="core queue observability-opik" \
-t private-gpt .
```
</Accordion>
---
## Persisting data
By default, ingested documents and local data are stored inside the container and lost on restart. Mount a volume to persist them:
```bash
docker run -p 8080:8080 \
-e OPENAI_API_BASE=http://host.docker.internal:11434/v1 \
-v ./local_data:/home/worker/app/local_data \
zylonai/private-gpt:latest
```