Incus-UI-Canonical is a browser frontend for Incus. It enables easy and accessible container and virtual machine management. Targets small and large scale private clouds.
This Incus-UI-Canonical is a forked project of LXD-UI.
This Incus-UI-Canonical is targeted to work with Incus instead of LXD.
LXD has been moved to Canonical and a community fork of LXD, Incus, is now part of the Linux Containers project.
Canonical packages LXD-UI as a part of lxd
snap package.
Lead Incus developer zabby is providing his incus
deb package at Incus package repository. Zabby bundles patched lxd-ui web page into /opt/incus/ui
of his deb package.
When I filed a wishlist bug report to bundle zabby's static web page in Debian's incus package: #1067041 and got a reasonable response that such thing needs to be packaged as a separate package.
Here is my first try to create such package which can work with the official Debian's incus package.
Essential part of package modifications are copied from zabby's workflow and ui-canonical-* patches and sed script.
I realized existence of zabby's code and structure from others packaging this part of code.
- https://github.com/KosmX/incus-ui-canonical-arch Arch Linux package
- https://gist.github.com/vaxvhbe/ce679df15fc521c8aca1ff9ddf537201 RPM spec file?
Create /etc/apt/sources.list.d/osamuaoki.sources
as:
Types: deb
URIs: https://osamuaoki.github.io/debian/
Suites: sid
Components: main
Signed-By:
-----BEGIN PGP PUBLIC KEY BLOCK-----
.
mDMEZZpSFhYJKwYBBAHaRw8BAQdA9T6mXRx7Zc64kQC+dKB2RgxNHK0+KFlCT8b/
JtFAWRu0HU9zYW11IEFva2kgPG9zYW11QGRlYmlhbi5vcmc+iJIEExYIADsCGwMF
CwkIBwIGFQoJCAsCBBYCAwECHgECF4AWIQTYnmsJtCCYzq8IGrFtbTgJIV9yDQUC
ZZpXMAIZAQAKCRBtbTgJIV9yDc+YAQDhuq/q76qobfHKi8C2MT83u1qZkg2eCpEF
UkyvrE59fwD4+d+IbCls19F3MCRuEmyvYQr+sghC82lnUiFOxUq/DbQhT3NhbXUg
QW9raSA8b3NhbXUuYW9raUBnbWFpbC5jb20+iJAEExYIADgWIQTYnmsJtCCYzq8I
GrFtbTgJIV9yDQUCZZpVVQIbAwULCQgHAgYVCgkICwIEFgIDAQIeAQIXgAAKCRBt
bTgJIV9yDehWAP9lG8DUBwUPl0kCTezQItOxQfDXgJ0Lyhv8dv4B1iWxjgEA8YBv
gCgDGby+pQmRX/STM7fu5LG62785oIj17HuMaQG4OARlmlIWEgorBgEEAZdVAQUB
AQdA+q2tgbmHC7MQv5bTHyawYrITRw7Gdg7M0p0+oSRtzS8DAQgHiHgEGBYIACAC
GwwWIQTYnmsJtCCYzq8IGrFtbTgJIV9yDQUCZZpU3QAKCRBtbTgJIV9yDdz6AQC8
yC8mQnwkj9D2x84oSdEpAckJ/e47kLDN3y/HIOwXbAD/ZCv2Ek1Exh/7SrxNL65J
ipPuCsH1vTsxbEE14mEs2Ag=
=IDSM
-----END PGP PUBLIC KEY BLOCK-----
# This is written in DEB822-STYLE FORMAT as described in sources.list (5)
This adds my personal APT repository. Then incus-ui-canonical
can be installed by
$ sudo apt update && sudo apt install incus-ui-canonical
or interactively with
$ sudo aptitude -u
$ sudo apt update
$ sudo apt devscripts yarnpkg npm
$ git clone https://osamuaoki.github.com/incus-ui-canonical
$ cd incus-ui-canonical
$ git remote add canonical https://github.com/canonical/lxd-ui
$ git remote update
$ #origtargz
$ git archive --prefix=incus-ui-canonical-0.6/ --format=tar.gz -o ../incus-ui-canonical_0.6.orig.tar.gz incus-ui-canonical/0.6
$ git checkout debian
$ debuild
$ cd ..
$ sudo dpkg -i incus-ui-canonical*.deb
The above deb-package build process accesses the external javascript repository site outside of the official Debian package repository.
Thus this generated binary deb package is not ready to be uploaded to the Debian repository.
You need to start the incus daemon while setting its environment with INCUS_UI=/var/lib/incus/ui
.
You can set it in /etc/environment
until the official incus
package support this.
$ incus config set core.https_address ":8443"
Then start any modern browser with it URL pointing to https://localhost:8443
.
See LICENSE and each file. My code is under GPL3.
- Update to newer lxd-ui. (0.7)
- License check and other packaging details including dependencies.
- Make this build to be compliant for the uploading to Debian repository. (Need help here)
Please refer to the guide and references available for LXD-UI.
- Substitute
lxc
command withincus
command. - Substitute
lxdbr0
withincusbr0
for network device. - Substitute
LXD_*
environment variables withINCUS_*
environment variables.
Please don't report issues of this fork to Canonical.
The followings are quoted from the original LXD-UI by Canonical with section headers made to be subsection headers
LXD-UI is a browser frontend for LXD. It enables easy and accessible container and virtual machine management. Targets small and large scale private clouds.
Get the LXD snap
sudo snap install --channel=latest/stable lxd
Or refresh to ensure at least version 5.14 is installed
sudo snap refresh --channel=latest/stable lxd
Follow the guide to access the LXD web UI.
You might want to:
- View the source on GitHub.
- Read about running the UI from git checkout, tests and advanced setup.
LXD-UI is a single page application written in TypeScript and React. See Architecture for details on bundling with LXD and the dev setup.
Create an instance Instance list Instance terminal
Graphic console Profile list Cluster groups
Storage Operations Warnings