Docker + Ollama: poradnik wdrożenia produkcyjnego (2026)

Autor: Jakub Rusinowski · Ostatnia aktualizacja: 12 lipca 2026

Uruchamianie Ollama w Dockerze daje Ci powtarzalną, odizolowaną i łatwą w aktualizacji infrastrukturę AI. Ten poradnik obejmuje wszystko — od konfiguracji na jednym serwerze po wdrożenie wielu GPU z l

W tym przewodniku

Uruchamianie Ollama w Dockerze daje Ci powtarzalną, odizolowaną i łatwą w aktualizacji infrastrukturę AI. Ten poradnik obejmuje wszystko — od konfiguracji na jednym serwerze po wdrożenie wielu GPU z load balancerem.

Dlaczego Docker do Ollama?

Wymagania wstępne

Krok 1: Zainstaluj NVIDIA Container Toolkit (przekazywanie GPU)

Jeśli po tym --gpus all nadal jest odrzucane, kontener nie widzi GPU przechodzi krok po kroku rejestrację środowiska uruchomieniowego; na Windowsie ten sam stos jedzie na instalacji sterowników w WSL2.

# Ubuntu/Debian
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
sudo apt-get update && sudo apt-get install -y nvidia-container-toolkit
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker

Krok 2: Uruchom Ollama z GPU

docker run -d \
  --gpus all \
  -v ollama:/root/.ollama \
  -p 11434:11434 \
  --name ollama \
  --restart unless-stopped \
  ollama/ollama

Parametr -v ollama:/root/.ollama montuje nazwany wolumen, dzięki czemu pliki modeli przetrwają restarty kontenera.

Krok 3: Pobieraj modele wewnątrz Dockera

# Pobierz model
docker exec -it ollama ollama pull llama3.1:8b

# Wypisz dostępne modele
docker exec -it ollama ollama list

# Uruchom testowy prompt
docker exec -it ollama ollama run llama3.1:8b "What is VRAM?"

Krok 4: Produkcyjny docker-compose.yml

Zbuduj pełny stos AI złożony z Ollama i Open WebUI:

version: "3.8"
services:
  ollama:
    image: ollama/ollama:latest
    container_name: ollama
    restart: unless-stopped
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities: [gpu]
    volumes:
      - ollama_data:/root/.ollama
    ports:
      - "11434:11434"
    environment:
      - OLLAMA_NUM_PARALLEL=4       # Pozwól na 4 równoczesne żądania
      - OLLAMA_MAX_LOADED_MODELS=2  # Trzymaj 2 modele naraz w VRAM
      - OLLAMA_KEEP_ALIVE=24h       # Trzymaj modele załadowane przez 24 godziny

  open-webui:
    image: ghcr.io/open-webui/open-webui:main
    container_name: open-webui
    restart: unless-stopped
    ports:
      - "3000:8080"
    volumes:
      - webui_data:/app/backend/data
    environment:
      - OLLAMA_BASE_URL=http://ollama:11434
    depends_on:
      - ollama

volumes:
  ollama_data:
  webui_data:

Uruchom całość:

docker-compose up -d

Zmienne środowiskowe do strojenia

ZmiennaDomyślnieOpis
OLLAMA_NUM_PARALLEL1Równoczesne żądania wnioskowania
OLLAMA_MAX_LOADED_MODELS1Modele trzymane w VRAM jednocześnie
OLLAMA_KEEP_ALIVE5mJak długo trzymać model w VRAM po użyciu
OLLAMA_MAX_QUEUE512Maksymalna liczba żądań w kolejce przed odrzucaniem
OLLAMA_NUM_GPUallLiczba wykorzystywanych GPU

Konfiguracja z wieloma GPU

Przy wielu GPU Ollama automatycznie wykorzystuje wszystkie dostępne karty dla pojedynczego modelu dzięki równoległości tensorowej:

docker run -d --gpus all \
  -e OLLAMA_NUM_GPU=2 \
  -v ollama:/root/.ollama \
  -p 11434:11434 \
  ollama/ollama

Na dwóch kartach RTX 4090 (łącznie 48 GB VRAM) uruchomisz Llama 3.3 70B w Q4 z prędkością około 55 tokenów na sekundę.

Health check i monitoring

# Sprawdź, czy Ollama działa poprawnie
curl http://localhost:11434/api/health

# Monitoruj wykorzystanie GPU
watch -n1 nvidia-smi

# Podejrzyj logi kontenera
docker logs -f ollama

# Sprawdź odpowiedź API
curl http://localhost:11434/api/tags

Bezpieczne wystawienie Ollama na zewnątrz (Nginx + SSL)

nginx.conf dla reverse proxy z uwierzytelnianiem basic:

server {
    listen 443 ssl;
    server_name your-ai.example.com;

    ssl_certificate /etc/letsencrypt/live/your-ai.example.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your-ai.example.com/privkey.pem;

    location / {
        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/.htpasswd;
        proxy_pass http://localhost:11434;
        proxy_set_header Host $host;
        proxy_read_timeout 600s;
    }
}

Aktualizacja Ollama

docker pull ollama/ollama:latest
docker-compose down
docker-compose up -d

Pliki modeli w wolumenie ollama_data zostają zachowane — nie musisz pobierać ich ponownie.

→ Powrót do wszystkich poradników | → Sprawdź kompatybilność sprzętu

← Wszystkie przewodniki | Sprawdź zgodność GPU