Incus
System monitoringContainersVirtualization
Incus is a modern, secure, and powerful system container and virtual machine manager.
Incus is a modern, secure, and powerful system container and virtual machine manager. This integration allows you to monitor and control your Incus instances directly from Homarr.
Features​
- Real-time monitoring of containers and virtual machines
- Health monitoring widget showing cluster overview with nodes, instances, and resource usage
- Instance control capabilities (start, stop, restart, freeze, unfreeze)
- Dedicated management page for batch operations on instances
Widgets & Capabilities​
System Health MonitoringDisplays information showing the health and status of your system(s).
Adding the integration​
You can find how to add the integration on the Integrations Management documentation page.
Secrets​
- Client Certificate & Private Key
info
Incus uses mutual TLS (mTLS) for secure authentication. You'll need to provide both a client certificate and private key.
| Name | Description |
|---|---|
Client Certificate | The client certificate for mTLS authentication |
Private Key | The private key for authentication |
- Client Certificate: Include
-----BEGIN CERTIFICATE-----and-----END CERTIFICATE----- - Private Key: Include
-----BEGIN RSA PRIVATE KEY-----and-----END RSA PRIVATE KEY-----
Steps to retrieve the credentials:
- Option 1: Use existing Incus client certificates
If you already have theincusCLI configured, find your certificates at:~/.config/incus/client.crt(Client certificate)~/.config/incus/client.key(Private key)
- Option 2: Generate new client certificates
Generate a private key:openssl genrsa -out homarr-client.key 4096 - Create a Certificate Signing Request (CSR):
openssl req -new -key homarr-client.key -out homarr-client.csr -subj "/CN=homarr-client" - Self-sign the certificate:
openssl x509 -req -days 3650 -in homarr-client.csr -signkey homarr-client.key -out homarr-client.crt - Add the certificate to the Incus trust store on your Incus server:
incus config trust add homarr-client.crt --name homarr - Verify your certificate is trusted:
incus config trust list
Network Requirements​
| Requirement | Details |
|---|---|
| Default Port | 8443 |
| Protocol | HTTPS with mTLS |
| Incus Version | 5.0 or later recommended |
Ensure Homarr can reach your Incus server. If the API is not accessible, enable network access on the Incus server:
incus config set core.https_address :8443
Incus Tools Page​
The dedicated Incus management page provides full control over your instances. Navigate to Manage → Tools → Incus to access it.
Features​
- Integration Selector: If you have multiple Incus integrations, select which server to manage
- Instance Table: View all instances with name, state, type, description, and node location
- Batch Operations: Select multiple instances and perform actions like start, stop, restart, freeze, or unfreeze
| Action | Description |
|---|---|
| Start | Start selected instances |
| Stop | Stop selected instances |
| Restart | Restart selected instances |
| Freeze | Pause/freeze selected instances |
| Unfreeze | Resume frozen instances |
Troubleshooting​
Connection Refused / Cannot Connect​
- Verify the Incus server URL is correct and includes the port (default: 8443)
- Ensure Homarr can reach the Incus server (check firewalls)
- Verify Incus is listening on the network interface:
incus config set core.https_address :8443
403 Forbidden Error​
- Verify your client certificate is added to Incus trust store:
incus config trust list - Ensure the certificate and private key match
- Check certificate hasn't expired:
openssl x509 -in client.crt -noout -dates
Certificate Errors​
- Ensure you're using the correct certificate format (PEM)
- Include the full certificate chain if required
- Verify the private key matches the certificate:
# These should produce the same output
openssl x509 -noout -modulus -in client.crt | openssl md5
openssl rsa -noout -modulus -in client.key | openssl md5
Widget Shows 0 for CPU/Memory​
Resource metrics require the instance to be running and may depend on:
- For containers: cgroup metrics availability
- For VMs: QEMU guest agent installation
For VMs, install the QEMU guest agent:
# Inside the VM
apt install qemu-guest-agent
systemctl enable --now qemu-guest-agent
Security Considerations​
- Client certificates and private keys are stored encrypted in Homarr's database
- Use dedicated certificates for Homarr (not your personal Incus client cert)
- Always use HTTPS (port 8443)
- Consider placing Homarr and Incus on the same private network
Permissions​
- The Incus integration requires
integration-interact-allpermission for control operations - Read-only monitoring requires
integration-use-allpermission - Only admin users can access the Tools → Incus page