Web Interface
The web interface provides browser-based access to Octez Manager, enabling remote management without SSH access. It offers the same functionality as the terminal UI through xterm.js terminal emulation.
Quick Start
Section titled “Quick Start”# Start the web interfaceoctez-manager web
# With password protectionoctez-manager web --password mysecret
# Custom portoctez-manager web --port 8443Then open http://your-server:8080 in any browser.
Features
Section titled “Features”The web interface provides full access to all Octez Manager functionality:
- Service management — Install, start, stop, and configure nodes, bakers, accusers, and DAL nodes
- Real-time monitoring — View service status, sync progress, and system metrics
- Log viewing — Stream and search logs from any service
- Binary management — Download and manage Octez versions
- RPC browser — Explore and query node RPC endpoints
Authentication
Section titled “Authentication”No Authentication (Development)
Section titled “No Authentication (Development)”octez-manager webAnyone who can reach the server can control your services. Only use this on trusted networks or for local testing.
Password Protection (Recommended)
Section titled “Password Protection (Recommended)”octez-manager web --password mysecretUsers must enter the password before gaining access. The password is transmitted over the WebSocket connection.
Security: For production use, place the web interface behind a reverse proxy with HTTPS (nginx, Caddy, etc.) to encrypt the connection.
Controller and Viewer Roles
Section titled “Controller and Viewer Roles”The web interface supports two access levels:
| Role | Access | URL |
|---|---|---|
| Controller | Full control (read/write) | http://server:8080/ |
| Viewer | Read-only (observe only) | http://server:8080/viewer |
To set separate passwords:
octez-manager web --password admin123 --viewer-password viewer123- Controller password grants full access
- Viewer password grants read-only access
- Only one controller can be connected at a time
- Multiple viewers can observe simultaneously
Environment Variables
Section titled “Environment Variables”Passwords can be set via environment variables:
export MIAOU_WEB_PASSWORD=admin123export MIAOU_WEB_VIEWER_PASSWORD=viewer123octez-manager webThis is useful for systemd services or container deployments where command-line passwords might be visible in process listings.
Running as a Service
Section titled “Running as a Service”To run the web interface as a systemd service:
[Unit]Description=Octez Manager Web InterfaceAfter=network.target
[Service]Type=simpleUser=rootEnvironment=MIAOU_WEB_PASSWORD=your-secure-passwordExecStart=/usr/local/bin/octez-manager web --port 8080Restart=on-failure
[Install]WantedBy=multi-user.targetsudo systemctl daemon-reloadsudo systemctl enable octez-manager-websudo systemctl start octez-manager-webReverse Proxy with HTTPS
Section titled “Reverse Proxy with HTTPS”For production deployments, use a reverse proxy to add HTTPS encryption.
Nginx Example
Section titled “Nginx Example”server { listen 443 ssl; server_name octez.example.com;
ssl_certificate /etc/letsencrypt/live/octez.example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/octez.example.com/privkey.pem;
location / { proxy_pass http://127.0.0.1:8080; proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; }}Caddy Example
Section titled “Caddy Example”octez.example.com { reverse_proxy 127.0.0.1:8080}Caddy automatically handles HTTPS certificates.
Keyboard Shortcuts
Section titled “Keyboard Shortcuts”The web interface supports the same keyboard shortcuts as the TUI:
| Key | Action |
|---|---|
↑/↓ | Navigate list |
Enter | Select / Open action menu |
Tab | Fold/unfold instance details |
b | Open Binaries page |
d | Open Diagnostics page |
r | Open RPC Browser |
? | Show help |
Esc | Go back / Close modal |
Note:
q(quit) is disabled in the web interface to prevent accidental disconnection.
Troubleshooting
Section titled “Troubleshooting”Connection Refused
Section titled “Connection Refused”- Ensure the web server is running:
octez-manager web - Check the port is correct (default: 8080)
- Verify firewall rules allow the port
WebSocket Connection Failed
Section titled “WebSocket Connection Failed”- The web interface requires WebSocket support
- Check that your reverse proxy is configured for WebSocket upgrades
- Some corporate firewalls block WebSocket connections
Terminal Size Issues
Section titled “Terminal Size Issues”The terminal automatically fits to your browser window. If the display looks wrong:
- Try resizing the browser window
- Refresh the page
- Check browser zoom level (100% works best)