Proof Of Concept: incus-compose

Awesome. FYI it looks like the DevPod repo is now unmaintained — indefinitely. However, the fork in the link below was established after the author discussed the future of DevPod with a representative at Loft, the creator of DevPod, who said the company is focused on other things with no plans to continue at this time:

The fork is very active and likely to pick up contributors. The author is flexible and it seems he may be more open to collaboration on new capabilities that expand on the original vision held by Loft.

Perhaps DevPod’s new home could provide benefit to your project and help you avoid unnecessary work? What if all that is needed is to build a DevPod Provider to integrate Incus?

There is also this VSCodium extension to integrate DevPod into VSCodium:

DevPod Providers, including Community Providers:

I found this article presenting the difference between Docker Compose and Devcontainer but with a frontend for DevOps like DevPod for Incus via a Provider which translates Docker and Devcontainer calls into native Incus maybe Incus gets more exposure faster.

1 Like

@nickwalt thanks for sharing that! We can definitely borrow many ideas from DevPod. However, simply building on top of it may be a bit difficult now since we are already halfway through with our own platform. I’ll be happy to share the news once it’s ready for beta testing.

1 Like

Awesome. Incus really does need a strong desktop ecosystem that compliments it’s target server/cloud environment.

I also believe that Incus needs to incorporate robust support for Virtio GPU Native Context:

I’ve been searching and searching for a way to run fully GPU accelerated isolated sandboxed environments in a truly virtualised desktop that exposes the entire GUI to the host at near native speeds. RDP, GL and Venus solutions just do not cut it anymore, not one bit — we need fast isolated private and secure virtual environments and Virtio GPU Native Context is that pathway.

Imagine Incus providing strong isolation where both the GUI apps and the backend (like a VSCode Remote SSH setup, or a local setup with local nested LXCs) puts the Editor in a virtual machine or LXC that runs fully accelerated on the GPU through Native Context.

Your DevPod Devcontainer equivalent (what will you call it?) could spin up VSCode Workspaces in LXCs nested within that virtual machine, or LXC (depending on the security model). Super lightweight.

Cheers.

This is awesome. Will you create a thread on the forum announcing its first open release?

Slightly sad to see the compose compatibility experiment there seems to have ended.
I’d love to give Incus a try for my very low stakes hobby / home / self hosting needs, but I’m really happy with how compose files let me describe all my containers (including their healthcheck, environment etc.), networks and volumes per project and across projects, and deploy those with a single command.

Am I understanding right that the ‘recommended’ way to do this with Incus currently would be using ansible and terraform? I’ve used neither before, and I have to admit it’s a little daunting for me to have to learn two additional tools, but if it’s the way to go I’ll try to get my head around those.

For automation and proper infrastructure-as-code terraform and ansible are the tools to use.
But if you really want a simple way to describe instance configuration, ssh2incus allows doing that in a web interface using simple yaml configs.
You can also use Incus UI which gives you a different perspective on that.
And even more ways to spin up incus instances are coming from ssh2incus project this year.

1 Like

Think the pain point is to get complex OCI running in Incus.

Usually you need to read the compose file and translate all the different settings into Incus. Split them into smaller sections one for each new Instance you need to create etc. Kind of a painful process but worth the effort.

As this is a manual process and requires Incus knowledge it is hard for someone who just starts using Incus with OCI. May be some kind of tool that at least can convert compose files into Incus config files would be cool and I think this was the main aim of this project at the time?

Hope over time this will or can be sorted in one of the other way. One thing I want to mention ssh2incus is great as it resolves a lot of different issues I run into. Keep on delivering new cool features.

3 Likes

Yes, it’s not that easy to run OCI images on incus :confused:

But René Jochum / incus-compose · GitLab is nearly done with it it’s as easy as a single compose.yaml to get those running, btw. you get System containers for free as well in compose.yaml :slight_smile:

Once those 2 issues are done ic will be in beta: First Release · Milestones · René Jochum / incus-compose · GitLab

1 Like

A beta of my incus-compose is online:

2 Likes