GB10 Manager v1.0.0

GB10 Manager is a web application for system and application management designed specifically for the NVIDIA GB10 Grace Blackwell. It provides a modern and intuitive interface to monitor, configure and deploy services on the ARM64 platform.

Target Platform NVIDIA GB10 Grace Blackwell - ARM64 (aarch64) architecture with integrated GPU. The application runs as a Docker container with access to the Docker socket and GPU via --gpus all.
GB10 Manager - Vue principale
Ollama: running
System Containers Applicatif A propos
System Information
Dummy Expert
Actualiser
Hostname
gb10-louis
OS
Ubuntu 24.04 LTS
Kernel
6.8.0-arm64
CPU
Grace 72 cores
RAM
128 GB
GPU
Blackwell B200
Statistiques temps reel
CPU
23%
GPU
45%
RAM
61%
Temp 42°C
GPU T 58°C
Power 185W

Main interface with System tab active

Features

💻

System Monitoring

CPU, GPU, RAM, temperatures, GPU power, frequencies and PState in real-time.

🤖

Diagnostic Ollama

Container stats, loaded/installed models, download and delete models.

📦

Docker Management

List, start, stop and statistics of running Docker containers.

🔨

Application Management

Install, configure and monitor applications with AI assistance.

🎨

5 Catppuccin Themes

Default, Mocha, Macchiato, Frappe and Latte. Full interface customization.

🌐

5 Languages

English, French, Spanish, Russian and Chinese. Fully translatable interface.

🔒

Mode Dummy / Expert

Secure mode by default. Expert mode with SSH terminal and system commands.

🎙

Whisper ASR

Integrated audio transcription (MP3, WAV, M4A). Multi-model and multi-language support.

🔒

HTTPS Certificate

Caddy SSL certificate management, CA download and integrated renewal.

Architecture

GB10 Manager is a Go application with an embedded web frontend, deployed as a Docker container on the GB10.

Architecture Diagram

+--[ Client Web ]--------------------------------------+ | Browser (HTTPS via Caddy) | | -> https://gb10-louis.local:8100 | +-----|------------------------------------------------+ | +-----|------------------------------------------------+ | [ Caddy Reverse Proxy ] (port 443 -> 8100) | | Auto-generated internal TLS certificate | +-----|------------------------------------------------+ | +-----|------------------------------------------------+ | [ Docker Host - NVIDIA GB10 ARM64 ] | | | | +--[ gb10-manager container ]--------------------+ | | | Go 1.22+ (embed.FS) | | | | Port 8100 (--network host) | | | | --gpus all (nvidia-smi access) | | | | -v /var/run/docker.sock (Docker CLI) | | | | -v /etc:/host-etc:ro (config host) | | | +------------------------------------------------+ | | | | +--[ Ollama ]------------------------------------+ | | | LLM inference (port 11434) | | | | API: /api/tags, /api/ps, /api/pull, etc. | | | +------------------------------------------------+ | | | | +--[ Services Docker ]---------------------------+ | | | open-webui :3000 | whisper-asr :9000 | | | | docmind-ai :8501 | stirling-pdf :8080 | | | | obsidian :80 | ... (36 supported apps)| | | +------------------------------------------------+ | +------------------------------------------------------+

Technical Stack

ComponentTechnologyDetails
BackendGo 1.22+Enhanced ServeMux, embed.FS for static files
FrontendHTML/CSS/JS vanillaZero dependencies, Catppuccin theme, built-in i18n
ContainerizationDocker (ARM64)Ubuntu 24.04 image with Docker CLI, webssh
LLMOllamaHTTP API localhost:11434, native or Docker support
GPUNVIDIA BlackwellAccess via nvidia-smi, --gpus all flag
TLSCaddyAuto-generated internal TLS certificates
SSHWebSSH (Python)Integrated web SSH terminal for Expert mode

Prerequisites

  • NVIDIA GB10 Grace Blackwell with Ubuntu 24.04 LTS
  • Docker Engine installed and running
  • NVIDIA Container Toolkit for GPU access (--gpus all)
  • Ollama installed (native or Docker container) on port 11434
  • Caddy (optional) for HTTPS reverse proxy
  • SSH access to the GB10 server

Graphical Installer

The gb10-installer.exe installer is a standalone Windows binary that deploys GB10 Manager automatically to a remote GB10 server via SSH.

Usage

  1. Copy the releases/ folder to your Windows machine
  2. Launch gb10-installer.exe - a web interface opens in the browser
  3. Step 1 - Connection: Enter the IP address, SSH port (22), username and password
  4. Step 2 - Configuration: Choose the destination directory (/opt/gb10-manager by default)
  5. Step 3 - Installation: Follow progress in real-time (SSE streaming)
  6. Step 4 - Models: Select and download desired Ollama models
Security The SSH password is encrypted in memory with AES-256-GCM upon entry. It is never stored in plaintext on disk. The SSH connection supports authentication via password and keyboard-interactive.

Releases directory contents

releases/
  gb10-installer.exe     # Windows installer (UPX compressed)
  payload/
    gb10-manager         # ARM64 Linux binary (UPX compressed)
    Dockerfile           # Dockerfile for the gb10-manager container
    docs.tar.gz          # Web documentation (gb10-docs container)

Manual Installation

1. Copy files to the server

scp gb10-manager-arm64 eforgues@192.168.1.89:/opt/gb10-manager/gb10-manager
scp Dockerfile eforgues@192.168.1.89:/opt/gb10-manager/Dockerfile

2. Build Docker image

cd /opt/gb10-manager
docker build --no-cache -t gb10-manager:latest -f Dockerfile .

3. Start the container

docker run -d \
  --name gb10-manager \
  --network host \
  --gpus all \
  --restart unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /etc:/host-etc:ro \
  gb10-manager:latest

Docker flags explained

FlagPurpose
--network hostShare host network (direct access to services and Ollama)
--gpus allGives access to nvidia-smi for GPU stats
--restart unless-stoppedAuto-restart unless manually stopped
-v /var/run/docker.sockAllows managing Docker containers from the application
-v /etc:/host-etc:roRead-only access to host configuration (certificates, etc.)

System Tab

The main tab displays GB10 system information, real-time statistics and the complete Ollama diagnostic.

System Information Cards

Cards display the server hardware and software information:

System cards
Hostname
gb10-louis
OS
Ubuntu 24.04.2 LTS
Kernel
6.8.0-49-generic
Architecture
aarch64 (ARM64)
CPU
72 cores (Grace)
RAM Totale
128 GB
Disque /
234/500 GB (47%)
Docker
27.5.0
Uptime
14 jours 6h
GPU
NVIDIA Blackwell

GB10 system information cards

Real-time Statistics

Statistics are automatically refreshed every 3 seconds via the endpoint GET /api/system/stats. Each metric is shown with a progress bar and a numeric value.

Statistiques temps reel
CPU
23%
GPU
67%
RAM
78%
Temp 42°C
GPU Temp 58°C
GPU Power 185W
GPU Clock 1890 MHz
PState P0

Real-time metrics: CPU, GPU, RAM, temperatures, power and frequencies

MetricSourceDescription
CPU/proc/statGlobal CPU usage percentage
GPUnvidia-smiGPU utilization (compute)
RAM/proc/meminfoMemory usage percentage
Temp/sys/class/thermalCPU/SoC temperature
GPU Tempnvidia-smiGPU temperature
GPU Powernvidia-smiGPU power consumption (watts)
GPU Clocknvidia-smiGPU clock frequency (MHz)
PStatenvidia-smiGPU performance state (P0-P12)

Dummy / Expert Mode

The Dummy mode (by default) blocks execution of potentially dangerous commands. The Expert mode unlocks all commands and enables the SSH Terminal button which opens an interactive WebSSH terminal to the GB10.

Warning Expert mode allows executing critical system commands. Every command is validated before execution. Use with caution.

Ollama Diagnostic

The Ollama Diagnostic section provides a complete view of the Ollama service status, consumed resources, loaded models in memory and installed models. It also allows downloading or deleting models.

Diagnostic Ollama
Diagnostic Ollama Actualiser
Ollama Container
CPU12.5%
RAM8.2 GB
Limite64 GB
NET I/O1.2G / 450M
DISK I/O12G / 8.5G
PIDs24
System
RAM Totale128 GB
RAM Utilisee78 GB
RAM Dispo50 GB
Swap0 / 16 GB
GPUBlackwell
GPU Util45%
GPU Temp58°C
GPU VRAM12/96 GB
Models loaded in memory
llama3.1:8b 4.6 GB VRAM - expires in 4m32s
Installed models
llama3.1:8b
4.6 GBSupprimer
qwen2.5:3b
1.8 GBSupprimer
nomic-embed-text:latest
262 MBSupprimer
Download a model
Download

Complete Ollama diagnostic: container, system, models and download

Diagnostic Features

  • Container stats: CPU, RAM, memory limits, network and disk I/O, PID count
  • System stats: Total/used/available RAM, swap, GPU (name, utilization, temperature, VRAM)
  • Loaded models: List of models currently in GPU memory with expiration time
  • Installed models: All downloaded models with size and delete button
  • Download a model: Input field with real-time SSE progress (bar + percentage)

Ollama APIs Used

Ollama EndpointUsage
GET /api/tagsList of installed models
GET /api/psModels loaded in memory
POST /api/pullDownload a model (streaming)
DELETE /api/deleteDelete a model

Docker Containers

The Containers tab displays all Docker containers on the system with their status, resource usage and quick actions (start, stop, restart).

Docker Containers
Ollama: running
System Containers Applicatif A propos
Docker Containers Actualiser
gb10-manager Up 3 days
CPU 2.1% | RAM 45 MB running
ollama Up 3 days
CPU 12.5% | RAM 8.2 GB running
open-webui Up 2 days
CPU 0.5% | RAM 120 MB running
whisper-asr Exited (0) 4h ago
stopped

Docker containers list with status and statistics

Displayed Information

  • Name: Docker container name
  • Uptime: Duration since startup or last exit
  • Resources: CPU and RAM usage (auto-refresh)
  • Status: Colored badge (running = green, stopped = red)
  • Actions: Start, stop or restart the container (Expert mode)

Applications

The Applications tab offers an advanced management interface for deployed services. It includes a sidebar with the list of detected applications and a detail panel with information, logs and available actions.

Applications tab
System Containers Applicatif A propos
Applications + Install
open-webui
whisper-asr
docmind-ai
stirling-pdf
obsidian
ollama
open-webui
Running - Up 2 days
Image
ghcr.io/open-webui/open-webui:main
Port
3000
CPU / RAM
0.5% / 120 MB

Application management interface with service details

Supported Applications (36 services)

GB10 Manager automatically recognizes 36 pre-configured Docker services, including:

ServicePortDescription
open-webui3000Web interface for LLM models (Ollama)
whisper-asr9000Audio transcription (Faster Whisper)
docmind-ai8501AI document analysis
stirling-pdf8080Complete PDF tools
ollama11434LLM inference server
obsidian80Note-taking (Markdown)
n8n5678Workflow automation
code-server8443VS Code in the browser
jupyter8888Notebooks Jupyter
grafana3001Monitoring dashboards

... and 26 more services (PostgreSQL, Redis, MinIO, Milvus, Home Assistant, etc.)

Installing a New Application

The + Install button opens a modal to specify the application name, installation method (Docker, APT, Snap) and version. The Ask AI button uses Ollama to generate optimal installation commands.

AI Chat (Ollama)

The chat panel at the bottom of the page allows interacting with Ollama for help with installation, configuration and troubleshooting. Commands suggested by the AI can be executed directly after validation.

AI Chat
Chat IA (Ollama)
Ask a question to install or configure an application.
Comment installer PostgreSQL avec Docker ?
Pour installer PostgreSQL en Docker :
docker run -d --name postgres -p 5432:5432 -e POSTGRES_PASSWORD=secret postgres:16
Envoyer

AI Chat with Ollama - interactive assistance

Chat Features

  • SSE Streaming: Responses arrive word by word in real-time
  • History: Conversation history is preserved during the session
  • Command execution: Commands in AI suggestions can be executed with one click (with validation)
  • Configurable model: The Ollama model used is configurable in settings
  • Collapsible panel: The chat can be shown/hidden via the toggle in options

Settings - General

The settings modal is accessible via the gear icon in the header. The General tab contains language, execution mode, persistent services and system information.

Settings - General
General Options Theme System Certificate
Display Language
Choose the interface language.
Execution Mode
Current mode: Dummy
Persistent Services
whisper-asr, docmind-ai, stirling-pdf, open-webui, obsidian
Information
Version :1.0.0
API :http://localhost:8100

General settings tab

Settings - Options

The Options tab controls interface behavior: AI chat, default Ollama model and compliment popup on startup.

Settings - Options
General Options Theme System Certificate
Chat IA (Ollama)
Shows the AI chat panel at the bottom of the page.
Show AI chat
Ollama Model
Select the default model used by the AI chat.
Default model
Compliment Popup
Shows a positive message on each startup.
Enable popup

Chat options, AI model and popup settings

Settings - Themes

GB10 Manager supports 5 visual themes based on the Catppuccin. Each theme changes the background, text, accent, success, warning and error colors.

Settings - Themes
General Options Theme System Certificate
Catppuccin Theme
Choose a color palette for the interface.
Default
Mocha
Macchiato
Frappe
Latte

Catppuccin theme selection

Available Themes

ThemeBackgroundStyle
DefaultDark (#0d1117)GitHub Dark - default theme
MochaWarm dark (#1e1e2e)Catppuccin Mocha - softened contrasts
MacchiatoMedium dark (#24273a)Catppuccin Macchiato - intermediate
FrappeDark grey (#303446)Catppuccin Frappe - grey-blue tones
LatteLight (#eff1f5)Catppuccin Latte - light theme

Settings - System

The System tab allows modifying GB10 system settings: hostname, timezone, DNS, locale. Each change is analyzed by AI before application to ensure system stability.

Modifiable Settings

SettingCommandEditable
Hostnamehostnamectl set-hostnameYes (AI analysis)
Timezonetimedatectl set-timezoneYes (AI analysis)
DNS ServerresolvectlYes (AI analysis)
NTPtimedatectlRead-only
Swapswapon --showRead-only
Localelocalectl set-localeYes (AI analysis)
AI Analysis Before applying a system change, the "Analyze" button sends the proposed modification to Ollama which evaluates risks and recommends action. The user must then confirm via the authentication modal (sudo password required).

Settings - HTTPS Certificate

The Certificate tab manages SSL certificates generated by Caddy for HTTPS.

Features

  • Caddy Status: Shows if Caddy is running
  • Certificate Info: Active certificate details (issuer, validity, subject)
  • CA Download: Download the CA certificate to install in your browser or operating system
  • Renewal: Deletes and regenerates Caddy's internal PKI. All clients must reinstall the new CA certificate after renewal
Renewal Warning Certificate renewal deletes the old PKI. All connected devices will need to reinstall the new CA certificate to avoid HTTPS warnings.

API Reference

GB10 Manager exposes a REST API on port 8100. All endpoints return JSON unless otherwise specified.

System

GET /api/system/info

Returns system information (hostname, OS, kernel, CPU, RAM, GPU, disque, Docker, uptime)

GET /api/system/stats

Returns real-time statistics (CPU%, GPU%, RAM%, temperatures, power, frequencies, PState)

POST /api/system/command

Executes a system command (security validation based on dummy/expert mode)

Ollama

GET /api/ollama/diagnostic

Returns complete diagnostics: container stats, system, loaded and installed models

POST /api/ollama/models/pull

Downloads a model with SSE streaming of the progress

DELETE /api/ollama/models

Deletes an installed model

Containers

GET /api/containers

Lists all Docker containers with status and statistics

POST /api/containers/{action}

Actions on a container: start, stop, restart

Applications

GET /api/apps

Lists detected applications with status and metadata

POST /api/apps/install

Installs an application (SSE streaming of installation logs)

Chat

POST /api/chat

Envoie un message au chat Ollama (streaming SSE de la reponse)

Services

GET /api/services

Lists configured persistent services

Whisper

GET /api/whisper/status

Verifie le statut du service Whisper ASR

POST /api/whisper/transcribe

Transcribes an audio file (multipart/form-data)

Certificates

GET /api/cert/info

HTTPS Caddy certificate information

POST /api/cert/renew

Renews the HTTPS certificate (SSE streaming)

GET /ca.crt

Downloads the CA certificate in PEM format

Healthcheck

GET /health

Returns "ok" if the service is operational

Example de requete

Download a model Ollama (SSE)
curl -N -X POST http://localhost:8100/api/ollama/models/pull \
  -H "Content-Type: application/json" \
  -d '{"name":"llama3.1:8b"}'

# Reponse SSE (flux continu) :
data: {"status":"pulling manifest"}
data: {"status":"downloading","completed":1234567,"total":4600000000}
data: {"status":"success"}
System information
curl http://localhost:8100/api/system/info | jq

{
  "hostname": "gb10-louis",
  "os": "Ubuntu 24.04.2 LTS",
  "kernel": "6.8.0-49-generic",
  "arch": "aarch64",
  "cpu": "72 cores",
  "ram": "128 GB",
  "gpu": "NVIDIA Blackwell",
  ...
}

Docker Configuration

Dockerfile (gb10-manager)

FROM ubuntu:24.04

# Required system tools
RUN apt-get update && apt-get install -y --no-install-recommends \
    bash ca-certificates curl iproute2 procps \
    pciutils usbutils dmidecode lshw inxi \
    python3 python3-pip openssh-client sshpass \
    && pip3 install --break-system-packages webssh \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

# Docker CLI (pas le daemon)
RUN install -m 0755 -d /etc/apt/keyrings \
    && curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
       -o /etc/apt/keyrings/docker.asc \
    && echo "deb [arch=arm64 signed-by=/etc/apt/keyrings/docker.asc] \
       https://download.docker.com/linux/ubuntu noble stable" \
       > /etc/apt/sources.list.d/docker.list \
    && apt-get update \
    && apt-get install -y --no-install-recommends docker-ce-cli \
    && apt-get clean && rm -rf /var/lib/apt/lists/*

COPY gb10-manager /app/gb10-manager
RUN chmod +x /app/gb10-manager

WORKDIR /app
EXPOSE 8100
CMD ["/app/gb10-manager"]

Commande docker run

docker run -d \
  --name gb10-manager \
  --network host \
  --gpus all \
  --restart unless-stopped \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /etc:/host-etc:ro \
  gb10-manager:latest

Internationalization (i18n)

The interface is fully available in 5 languages. Translation is handled client-side via the I18N object in app.js and the HTML attributes data-i18n.

Supported languages

CodeLanguageInterface
enEnglishDefault language
frFrenchFull translation
esSpanishFull translation
ruRusskij (Russian)Full translation
zhZhongwen (Chinese)Full translation

Translation mechanism

HTML - attribut data-i18n
<button data-i18n="refresh">Actualiser</button>
<span data-i18n-title="settings">Parametres</span>
<input data-i18n-placeholder="chatPlaceholder">
JavaScript - translation function
function t(key) {
    return (I18N[currentLang] && I18N[currentLang][key])
        || I18N.en[key] || key;
}

Security

Dummy / Expert Mode

The security validator (security/validator.go) analyzes each command submitted and blocks dangerous operations in Dummy mode:

  • Commands rm -rf, mkfs, dd, shutdown, reboot
  • Modifications de /etc/passwd, /etc/shadow
  • Redirection to devices (/dev/sda, etc.)
  • In Expert mode: all commands are authorized with user validation

Authentification

System operations (hostname modification, DNS, etc.) require authentication via sudo password. The password is transmitted only for the current operation and is never stored.

Secured container

  • The Docker socket is mounted read/write for container management
  • The host /etc files are mounted read-only (:ro)
  • The container uses --network host for direct access to local services
  • Le flag --gpus all provides access only to nvidia-smi, no unsupervised direct GPU access

Installer

  • SSH password encrypted in memory with AES-256-GCM (PBKDF2 key derivation)
  • Never written to disk in plain text
  • SSH connection with 10-second timeout
  • Keyboard-interactive support in addition to password authentication