OpenWebUI Deployment Overview for North MiniCode on Server¶
Prerequisites¶
The following system parameters and network settings are required for the application to function correctly:
-
Operating System: Ubuntu (HWE kernel version is recommended).
-
Drivers: Presence of an NVIDIA GPU and installed drivers for hardware acceleration.
-
Ports:
-
443(external HTTPS port) — accessible via proxy server. -
8080(internal application port) — used for communication with the proxy. -
11434(Ollama port) — used locally by the container.
-
FQDN of the final panel on hostkey.in domain¶
A dynamic subdomain is used to access the interface, generated according to the following pattern:
| Parameter | Value |
|---|---|
| Prefix | north-mini |
| Domain | hostkey.in |
| Full Pattern | north-mini{Server_ID_from_Invapi}.hostkey.in |
File and Directory Structure¶
Core data and configurations are distributed across the following paths:
-
/root/nginx— working directory for the Nginx container (containscompose.yml). -
/data/nginx/user_conf.d— directory containing Nginx virtual host configuration files. -
/data/nginx/nginx-certbot.env— environment variables file for SSL certificates.
Application Installation Process¶
Deployment includes the following stages:
-
Updating system packages and installing the
linux-generic-hwe-22.04kernel. -
Installing NVIDIA drivers (if hardware is present).
-
Installing and starting the Ollama service.
-
Downloading the
north-mini-code-1.0language model via Ollama. -
Deploying the OpenWebUI container.
-
Configuring the Nginx proxy server with automatic Certbot SSL certificate acquisition.
Docker Containers and Execution¶
The following components are deployed in the system:
OpenWebUI¶
Container for the language model interaction interface.
-
Image Name:
ghcr.io/open-webui/open-webui:main -
Ports: Uses
hostmode (accessible via proxy). -
Volumes:
open-webui:/app/backend/data -
Environment Variables:
OLLAMA_BASE_URL:http://127.0.0.1:11434
-
Restart Policy:
always
Nginx (Certbot)¶
Container for SSL certificate management and traffic proxying.
-
Image Name:
jonasal/nginx-certbot:latest -
Ports: Uses
hostmode. -
Volumes:
-
nginx_secrets:/etc/letsencrypt -
/data/nginx/user_conf.d:/etc/nginx/user_conf.d
-
-
Environment Variables: Loaded from the
/data/nginx/nginx-certbot.envfile. -
Restart Policy:
unless-stopped
Databases¶
The application uses a local Ollama service to work with models. OpenWebUI interface data is stored in a Docker Volume named open-webui.
Application Update Instructions¶
Updates are performed by updating images and restarting containers:
Additionally, the following command is used to apply changes in the Nginx configuration:Permissions Settings¶
-
The
/root/nginxdirectory has0755permissions, ownerroot. -
The
/root/nginx/compose.ymlfile has0644permissions, ownerroot.
Available Connection Ports¶
| Port | Purpose | Access Type |
|---|---|---|
443 | OpenWebUI HTTPS interface | External (via domain) |
8080 | Local application port | Internal |
11434 | Ollama API | Local |
Starting and Stopping the Application¶
Container management is performed via Docker Compose in the /root/nginx directory:
-
Start all services:
docker compose up -d -
Stop services:
docker compose down -
Reload Nginx configuration:
docker exec nginx-nginx-1 nginx -s reload