OpenWebUI Deployment Overview for Gemma4-26b on Server¶
Prerequisites¶
The following system parameters are required for the application to function correctly:
-
Operating System: Ubuntu (version 22.04 with HWE kernel installed is recommended).
-
Drivers: Presence of an NVIDIA GPU and installed drivers (installed automatically via
ubuntu-drivers autoinstall). -
Access: Superuser (
root) privileges for installing system packages, kernels, and Docker. -
Network: Internet access to download Docker images, LLM models, and SSL certificates.
FQDN of the final panel on hostkey.in domain¶
The interface is accessed via automatic subdomain generation following this template:
| Parameter | Value |
|---|---|
| Prefix | gemma26b |
| Domain | hostkey.in |
| Full Template | gemma26b{Server_ID_from_Invapi}.hostkey.in |
File and Directory Structure¶
Main directories used in the system:
-
/root/nginx— working directory for Nginx configuration and Docker Compose. -
/data/nginx/user_conf.d— directory containing custom Nginx configurations (includingproxy_passsettings). -
/data/nginx/nginx-certbot.env— environment variables file for Certbot.
Application Installation Process¶
Deployment includes the following stages:
-
Updating system packages and installing the HWE kernel.
-
Installing NVIDIA drivers (if hardware is present) and rebooting the system.
-
Installing and starting the Ollama service.
-
Downloading the
gemma4:26blanguage model via theollama pullcommand. -
Deploying the OpenWebUI container.
-
Configuring the Nginx reverse proxy with automatic SSL certificate acquisition via Certbot.
Docker Containers and Execution¶
The system deploys two main components: one running as a system service (Ollama) and one in a container (OpenWebUI), as well as a proxy server in Docker Compose.
OpenWebUI¶
-
Image Name:
ghcr.io/open-webui/open-webui:main -
Ports: Uses
hostnetwork mode. -
Volumes:
open-webui:/app/backend/data -
Environment Variables:
OLLAMA_BASE_URL:http://127.0.0.1:11434
-
Restart Policy:
always
Nginx (via Docker Compose)¶
-
Image Name:
jonasal/nginx-certbot:latest -
Ports: Uses
hostnetwork mode. -
Volumes:
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d
-
-
Environment Variables:
CERTBOT_EMAIL:[email protected]
-
Restart Policy:
unless-stopped
Databases¶
The application uses Ollama as the backend for model operations. OpenWebUI data is stored in the internal Docker volume open-webui.
Application Update Instructions¶
Updates are performed by restarting containers and pulling new images: docker compose pull && docker compose up -d (in the /root/nginx directory).
It is also possible to reload the Nginx configuration without stopping the service using the command: docker exec nginx-nginx-1 nginx -s reload
Available Connection Ports¶
| Port | Protocol | Purpose |
|---|---|---|
443 | HTTPS | Primary interface access via web proxy |
8080 | HTTP | Internal proxy port (used by Nginx) |
11434 | TCP | Local Ollama API |