lxd-webui
lxd-webui copied to clipboard
Web interface (GUI), web frontend to manage the LXD Containers
LXD WebUI 
Demo on http://aarnaud.github.io/lxd-webui/
Release builds
The release builds of static webapp is available on https://github.com/aarnaud/lxd-webui/releases
Build from sources
Follow the instructions in this link
Configuration on LXD
Allow LXD to listen on 8443 port
lxc config set core.https_address [::]:8443
Add CORS settings on LXD (Since LXD 2.0.0.rc2)
lxc config set core.https_allowed_origin "*" # SECURITY WARNING: prefer to restrict with lxd-webui url
lxc config set core.https_allowed_methods "GET, POST, PUT, DELETE, OPTIONS"
lxc config set core.https_allowed_headers "Content-Type"
sudo service lxd restart # sometimes is required
Accept self-sign server certificate
Go on LXD server url (example: https://127.0.0.1:8443) with your browser.
Generate x509 certificate for browser authentification
- Generate a client private key
openssl genrsa -out lxd-webui.key 4096
- Generate a certificate request (csr)
openssl req -new -key lxd-webui.key -out lxd-webui.csr
- Generate an auto-sign certificate
openssl x509 -req -days 3650 -in lxd-webui.csr -signkey lxd-webui.key -out lxd-webui.crt
- Export keys to pkcs12 for use in browers
openssl pkcs12 -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -export -in lxd-webui.crt -inkey lxd-webui.key -out lxd-webui.pfx -name "LXD WebUI"
-
Import lxd-webui.pfx in your brower :
-
Authorize the certificate on LXD server.
lxc config trust add lxd-webui.crt