[Own Image Server] The requested image couldn't be found

Hello! I’m trying to setup my own Incus image server, but Incus doesn’t seem to be able to detect my images.

Does anybody with knowledge on simplestreams image servers know why Incus doesn’t recognize my images?

Image server url: https://images.hyeararat.com
https://images.hyeararat.com/streams/v1/index.json
https://images.hyeararat.com/streams/v1/images.json


The only ftypes supported by Incus are:

  • incus.tar.xz (metadata tarball)
  • squashfs (preferred for container images)
  • squashfs.vcdiff (used for delta images)
  • root.tar.xz (fallback for container images)
  • incus_combined.tar.gz (very rarely used, allows for a single file per image)
  • disk-kvm.img (preferred for VM images)
  • disk1.img (fallback for VM images)
  • uef1.img (fallback for VM images)

So in most cases, a valid container image should have an incus.tar.xz ftype and either squashfs or root.tar.xz. A valid VM image should have an incus.tar.xz ftype and a disk-kvm.img.

thank you so much! I changed to tar.xz instead of tar.gz and now everything is working perfectly!

1 Like

Hi @Hye-Dev Appreciate if you can share any notes on setting up local incus image server from scratch (step-by-step). Thanks in advance.

I’m using an image server that me and @Wolfo-Gaming programmed. It’s open source here: GitHub - Hye-Ararat/Image-Server: Ararat Image Server (compatible with LXD simplestreams). I also have an image builder tool which can be found here GitHub - Hye-Ararat/Image-Builder that generates images that it can auto-upload to the image server (although this is more useful for Hye Ararat than general Incus usage, as Hye Ararat supports single application containers which it does by manipulating the Incus API, and the builder is built more in-mind for generating single application images rather than full system images)

Documentation on installation of the Image Server is here Installation | Hye Ararat. You can skip the postgres database requirement and the .env file, as it uses sqlite now (but npx prisma db push is still a requirement). I’ll be updating the documentation once a stable build of Hye Ararat Yergu is released.

Hope this helps you setup your own Incus Image Server!

1 Like

Thanks a lot for the details.

Hello again,

I just rebuilt my image (it had an issue) and now my Incus install is once again saying that the requested image couldn’t be found, despite the filetypes being correct.

I can’t seem to figure out why it doesn’t think I have any images. Any ideas?

20240003 isn’t a valid timestamp, you likely want 20240103

oh i don’t know how i missed that haha. seems there is a bug in my image builder… thank you so much for all of your help, I truly appreciate it!

I’ve corrected that issue, now the image comes up when I use incus image info

root@us-dal-1:~# incus image info hye:papermc
Fingerprint: 846d64fdd83f384972509db1b7f74e98eb4686d432b3bcc30b1ed98e0e8b4bc9
Size: 236.40MiB
Architecture: x86_64
Type: container
Public: yes
Timestamps:
    Created: 2024/01/03 00:00 UTC
    Uploaded: 2024/01/03 00:00 UTC
    Expires: never
    Last used: 0001/01/01 00:00 UTC
Properties:
    os: papermc
    serial: 20240103_18:16
    type: root.tar.xz
    release: latest
    architecture: amd64
    description: papermc latest amd64 (20240103_18:16)
    variant: stateless
Aliases:
    - papermc
    - papermc/amd64
Cached: no
Auto update: disabled
Profiles: []

However when I try to launch a container using the image It still thinks it is not recognized

root@us-dal-1~# incus launch hye:papermc
Creating the instance
Error: Failed instance creation: Failed getting remote image info: Failed getting image: The requested image couldn't be found

The incus server caches the simplestreams data, so it’s quite possible that your cache contains the broken stream. If you don’t want to wait it out, you can try wiping the content of /var/cache/incus/ and then restart the daemon with systemctl restart incus

1 Like

That worked! Thank you again.