Sign inSign up

psauxw/ollama-webui

By psauxw

•Updated 4 days ago

Image
0

2.0K

psauxw/ollama-webui repository overview

⁠psauxw/ollama-webui

All-in-one Docker image combining Ollama and Open WebUI in a single container, with automatic Ollama updates on every boot.

⁠What's included

  • 🦙 Ollama⁠ — run large language models locally
  • 🌐 Open WebUI⁠ — ChatGPT-like web interface
  • 🔄 Auto-updates Ollama to the latest version on every container start
  • 🎮 NVIDIA GPU support via the NVIDIA Container Toolkit

⁠Requirements


⁠Quick Start

docker run -d \
  --gpus all \
  -p 3000:8080 \
  -v ollama:/root/.ollama \
  -v open-webui:/app/backend/data \
  --name open-webui \
  --restart always \
  psauxw/ollama-webui:latest

Then open http://localhost:3000⁠ in your browser.


⁠Docker Compose

Create a docker-compose.yml file:

services:
  open-webui:
    image: psauxw/ollama-webui:latest
    container_name: open-webui
    restart: always
    ports:
      - 3000:8080
    volumes:
      - ollama:/root/.ollama
      - open-webui:/app/backend/data
    extra_hosts:
      - host.docker.internal:host-gateway
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities:
                - gpu

volumes:
  ollama:
  open-webui:

Then run:

docker compose up -d

⁠Connecting other containers

If you have other containers (e.g. a Discord bot) that need to reach Open WebUI internally, put them on a shared network:

services:
  open-webui:
    image: psauxw/ollama-webui:latest
    container_name: open-webui
    restart: always
    ports:
      - 3000:8080
    volumes:
      - ollama:/root/.ollama
      - open-webui:/app/backend/data
    extra_hosts:
      - host.docker.internal:host-gateway
    networks:
      - shared-net
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: all
              capabilities:
                - gpu

volumes:
  ollama:
  open-webui:

networks:
  shared-net:
    external: true

Create the network first:

docker network create shared-net

Other containers on shared-net can then reach Open WebUI at http://open-webui:8080.


⁠Persistent Storage

VolumeDescription
/root/.ollamaOllama models and configuration
/app/backend/dataOpen WebUI users, chats, and settings

Both volumes persist across container restarts and image updates. To upgrade to a newer image without losing data:

docker compose pull
docker compose up -d

⁠Ports

PortService
3000 (host) → 8080 (container)Open WebUI
11434Ollama API (optional, expose if needed)

To also expose the Ollama API to your host, add 11434:11434 under ports.


⁠Environment Variables

VariableDefaultDescription
OLLAMA_HOST0.0.0.0Ollama listen address
OLLAMA_ORIGINS*Allowed CORS origins
DATA_DIR/app/backend/dataOpen WebUI data directory

⁠Updating

The container automatically pulls and installs the latest Ollama binary every time it starts. To update Open WebUI, pull the latest image:

docker compose pull && docker compose up -d

Tag summary

Content type

Image

Digest

sha256:4264e5b03…

Size

8.8 GB

Last updated

4 days ago

docker pull psauxw/ollama-webui