Note that we are working on having the systemd unit files for the agent pre-built into most of our images in the near future, so that step should become a thing of the past soon enough
I get a matching image with the host, i.e. both are x86_64.
If you get x86 while your host is x86_64, then it should be a bug (which I cannot replicate here).
I suppose the semantics are to follow by default the architecture of the host, unless you explicitly specify otherwise (as it, for example, ubuntu:18.04/i386).
I have tried though to launch a i386 virtual machine, and I might hit a feature.
Specifically,
$ lxc image list ubuntu:bionic/i386
+---------------+--------------+--------+--------------------------------------------+--------------+-----------------+----------+------------------------------+
| ALIAS | FINGERPRINT | PUBLIC | DESCRIPTION | ARCHITECTURE | TYPE | SIZE | UPLOAD DATE |
+---------------+--------------+--------+--------------------------------------------+--------------+-----------------+----------+------------------------------+
| i386 (5 more) | 6b11d9656e44 | yes | ubuntu 18.04 LTS i386 (release) (20200107) | i686 | CONTAINER | 180.09MB | Jan 7, 2020 at 12:00am (UTC) |
+---------------+--------------+--------+--------------------------------------------+--------------+-----------------+----------+------------------------------+
| i386 (5 more) | ffb876ca48fb | yes | ubuntu 18.04 LTS i386 (release) (20200107) | i686 | VIRTUAL-MACHINE | 318.13MB | Jan 7, 2020 at 12:00am (UTC) |
+---------------+--------------+--------+--------------------------------------------+--------------+-----------------+----------+------------------------------+
Ok, the name ubuntu:bionic/i386 is not a single image, but it the name for both the container image and the VM image.
Which means that the image cannot be found, while in fact I assume that lxc image info expects to result in a single image, not two of them.
$ lxc image info ubuntu:bionic/i386
Error: The requested image couldn't be found
lxc image info as a --vm option though. Still, it does not filter the two results into a single result.
$ lxc image info --vm ubuntu:bionic/i386
Error: The requested image couldn't be found
I got the profile from @stgraber’s announcement. :-).
My eventual hope for GUI-VM support would be something what exists with Chrome OS / Crostini, which runs Linux containers managed by LXD within their own VM. The solution includes virtual GPU support, passing sound out of the container, solution for mounting files and external drivers. Also, GUI apps with “.desktop” files get surfaced in the host’s launcher and will launch the VM to run the app if needed.
They narrowed their scope of integration work by focusing primarily on one VM running one container with GUI integration.
Most likely the cloud-init data in the profile did not get processed somehow, therefore the Ubuntu account did not probably get created. LXD does not parse the cloud-init data but sends them directly to the container/VM.
I could not distinguish an issue from the lxc profile show vm output.
Your Youtube video shows that the cloud-init configuration was not applied in the container. lxc console should show some additional output during network initialization, that looks similar to
[ OK ] Started Network Service.
Starting Network Name Resolution...
Starting Wait for Network to be Configured...
[ OK ] Started Network Name Resolution.
[ OK ] Reached target Network.
[ OK ] Reached target Host and Network Name Lookups.
[ OK ] Started Wait for Network to be Configured.
Starting Initial cloud-init job (metadata service crawler)...
[ 7.138458] cloud-init[666]: Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~18.04.1 running 'init' at Wed, 05 Feb 2020 17:52:53 +0000. Up 7.03 seconds.
[ 7.141724] cloud-init[666]: ci-info: ++++++++++++++++++++++++++++++++++++++Net device info++++++++++++++++++++++++++++++++++++++
[ 7.143822] cloud-init[666]: ci-info: +--------+------+----------------------------+---------------+--------+-------------------+
[ 7.148156] cloud-init[666]: ci-info: | Device | Up | Address | Mask | Scope | Hw-Address |
[ 7.152140] cloud-init[666]: ci-info: +--------+------+----------------------------+---------------+--------+-------------------+
There is a #cloud-config missing, which is essential. I added it myself in my test, but still it did not work.
You do not set a static IPv4 address, which means that the VM would not finish booting up until it timed out for the DHCP lease. Hence, no cloud-init until it got an IP address (which could not get). I set an IPv4 address with your profile, but still the VM did not get an IPv4 address (hence, not ubuntu account is created).
I tried again (LXD 3.20) with my VM profile and it worked for me.
I cannot figure out what is wrong with your profile.