[Request] Add more info about images into Getting Started

While I was searching for vm images, I noticed that the “Getting started” docs maybe lack some info about the use of images.
Maybe some information could be added to it?

Some info I find useful:

  1. Regarding the use the implemented remote image-servers:
  • List of image-servers:
    lxc remote list

  • show remote images:
    lxc image list images:

  • explain differences between:

    • virtual machine
    • container
    • default
    • cloud
  • explain how to specify the search.
    For example:
    lxc image list images: debian
    will show all debian images

  • explain how to use the listed images

  1. Regarding the manual download of images:
    Note: Maybe a topic for a seperate Images-doc.
    But could be linked inside the “Getting started”-doc.

Usecase: This is sometimes useful if someone wants to change something beforehand, e.g. modify the qcow image of the vm.

Website:
https://images.linuxcontainers.org/images/

  • normal container image:

download:
lxd.tar.xz
rootfs.squashfs

command:
lxc image import lxd.tar.xz rootfs.squashfs --alias custom-imagename

  • vm-image:

download:
lxd.tar.xz
disk.qcow2

command:
lxc image import lxd.tar.xz disk.qcow2 --alias custom-imagename

  1. Regarding Building your own Images:
    Note: Maybe also a topic for a seperate Images-doc .
    But could be linked inside the “Getting started”-doc.

Image templates:

Hi,

Thanks for the suggestions.

Did you find the answers you needed or are you needing clarification on any particular point?

If you feel confident enough with it and had the time, if you write a forum post about image management we could move it into the Tutorials section for others to benefit from in the future.

Also, the getting started guide source is on github here , if you were able to make a pull request with suggested changes then this could be review by one of the team.

1 Like

Found most of the answers :slight_smile:.

One question:
I haven’t tried it yet, but I assume distrobuilder can also build vm images?

Thanks for the tip.
I will try that :slight_smile:.

Some questions about writing:

  • Just for security: The Docs are written in Markdown?
  • Can I add a page for “Images”?
    Update: I see that the “docs”, (for example: Requirements), are in the program repos (incus/doc at main · lxc/incus · GitHub).
    Can I also contribute to those, or wouldn’t you like that?
  • Could I write a little info about how to edit a qcow-image or wouldn’t you like to see that?

Update:

  • Am I correct that I only need to add:
Signed-off-by: Random J Developer <random@developer.org>

to my commits?
Hmm :thinking: I like my privacy, but maybe I can make an exception for you.

Yep, that’s right. The DCO is pretty common, mostly being popularized by the Linux Kernel when they ran into some legal issues a long time ago where just the automatic Author field didn’t quite satisfy some legal folks about who owns copyright on a particular change.

:smile: Yeah the usual legal stuff, it does stop at nothing.

I will see what I can do about it, maybe I use one of my “public” domains.

  • One more thing: Do you want pull requests in small pieces?
    Or can I also send a bigger pull request and you choose which commits you want to have (if any)?

Probably smaller PRs would suit best that way they are easier to review. Thanks.

What is different between the variants “cloud” and “default”?

The cloud variant has cloud-init installed and so will apply any defined cloud-init configuration.

Ubuntu images are available via “images:” (https://images.linuxcontainers.org) and “ubuntu:” (https://cloud-images.ubuntu.com/releases). There are some differences between them.

The images in “ubuntu:” have cloud-init in them, as the URL suggests. The json output of lxc image lis ubuntu:t does not have .properties.variant. There are no “default” images in “ubuntu:”.

Also, the cloud images are (slightly?) different from the “cloud” variant in “images:”.

With the following you get three different containers for jammy. Two “cloud” variants, and one “default” variant.

[keesb@moorsterbeek ~]$ lxc launch images:ubuntu/jammy/cloud jammy-cloud
Creating jammy-cloud
Starting jammy-cloud                        
[keesb@moorsterbeek ~]$ lxc launch images:ubuntu/jammy/default jammy-default
Creating jammy-default
Starting jammy-default                        
[keesb@moorsterbeek ~]$ lxc launch ubuntu:jammy jammy
Creating jammy
Starting jammy                            

Images b69e245eeb4f and f3fedd40fcca are the “cloud” images. Their sizes are quite different.

[keesb@moorsterbeek lxd-images]$ lxc image list
+-------+--------------+--------+---------------------------------------------+--------------+-----------+----------+-------------------------------+
| ALIAS | FINGERPRINT  | PUBLIC |                 DESCRIPTION                 | ARCHITECTURE |   TYPE    |   SIZE   |          UPLOAD DATE          |
+-------+--------------+--------+---------------------------------------------+--------------+-----------+----------+-------------------------------+
|       | 382f34e2d635 | no     | Ubuntu jammy amd64 (20220616_07:43)         | x86_64       | CONTAINER | 112.50MB | Jun 17, 2022 at 8:11am (UTC)  |
+-------+--------------+--------+---------------------------------------------+--------------+-----------+----------+-------------------------------+
|       | b69e245eeb4f | no     | Ubuntu jammy amd64 (20220616_07:43)         | x86_64       | CONTAINER | 129.26MB | Jun 17, 2022 at 7:47am (UTC)  |
+-------+--------------+--------+---------------------------------------------+--------------+-----------+----------+-------------------------------+
|       | f3fedd40fcca | no     | ubuntu 22.04 LTS amd64 (release) (20220609) | x86_64       | CONTAINER | 403.01MB | Jun 16, 2022 at 11:00am (UTC) |
+-------+--------------+--------+---------------------------------------------+--------------+-----------+----------+-------------------------------+

If you want a cloud image then you must be aware that images:ubuntu/focal is not the right one. You need to specify images:ubuntu/focal/cloud.