IncusScripts - a fork of the Proxmox VE community scripts

I love the Proxmox community scripts but Incus is my deployment method of choice, so I wrote a tool called surgeon to make surgical modifications of an upstream repository in a fork.

If you’re unfamiliar, the Proxmox community scripts give you a suite of over 200 scripts that create lxc containers or vms on Proxmox.

Thus IncusScripts was born.

It’s still early, but almost all of the “CONTAINER” scripts are working. So if you wanted to install a Ghost blog instance on your incus server, you could visit this url and copy the script to launch an instance.

Currently container instances are supported and VMs are not.

Modifications to the upstream scripts are managed in a yaml configuration file.

If this is your cup of tea, I’d love to have more eyes on it, both for testing and for contributions.

Cheers,
Brian

7 Likes

Without understanding anything, I gave it a blind shot. Got something that looks nice :slight_smile:

NICE! Thanks for trying it out.

Woah, this is awesome! I had thought about modifying the scripts for the same purpose, nice to see you’ve done it.

This will also be very useful to users in the TrueNAS SCALE community since next month iXsystems will be releasing a beta with Incus as the Container/VM management backend.

Currently TrueNAS has it in the in the nightlies, release candidates will be March, and the full release is expected to be around mid April.

I assigned a specific ip to my incusbr0 (10.1.1.253). Looks like one is expected to run using the “default” profile. When I tried to run inside a project that doesn’t use incusbr0 the installation was not successful. Will do more testing. thanks again.

I thought TrueNAS runs kubernetes internally for hosting all the apps. Not true anymore ?

TrueNAS is one of my intended targets. I’ve got a nightly version running, but these scripts don’t work (yet). They will though :slight_smile:

2 Likes

Yeah, a few months ago they switched from Kubernetes to Docker. AFAIK they will be keeping Docker for applications. They are just moving their VM system to Incus for VMs and system containers.

I thought TrueNAS had the best implementation of K8s because as an user I don’t have to deal with any of its complexities or have to go thru any steep learning curve. Just need to know where to click / install / delete and move on :slight_smile: I am glad to know they are going with incus. Definitely looking forward to play with it.

This is great! I had been wanting to do something similar, but lack of skills and time meant it was sitting on the backburner. Thanks so much for taking this on.

Small UX note - the instructions all refer to the ProxmoxVE shell instead of the host shell.

Question - is it possible to set the resource (vCPUs, storage. RAM) etc to not defined across the board? Proxmox seems to want these set but this seems to me a waste of time in LXCs.

Yeah, I’m slowly working on the scripts to fix the documentation. it’s a little tedious. Pull Requests much appreciated :slight_smile:
as for the resources, I think that would be a great idea, at least a way to ignore or override their defaults. You can use “advanced” mode and the memory/cpu settings can be changed in the scripts. I’m currently ignoring the disk settings.

Please take the current development and developer discussion into account.
Tteck (rest in peace) was great, the community effort began with a lot of power, but apparently one major player is discarding security measures.
https://www.reddit.com/r/Proxmox/s/nVvePHvMon

Anyway, looking forward to incus.
Running a truenas core box since 8 years with a few jails, playing with raspis and some old wyze as Proxmox cluster, moving to truenas scale, but was missing the “hyper converged” aspect of moving some apps through all the different machines.

Incus might be the puzzle piece I missed so far.

Plan is to migrate the Nas boxes to fangtooth and replace the Proxmox cluster with an incus cluster.

The scripts will definitely help, thanks!

1 Like

Major updates over the past week. The website is now live and updated, and most of the blockers for basic and some advanced usage are fixed.

I removed all the sketchy-looking scripts, and ones that don’t apply to Incus.

And I got rid of the curl|bash in favor of a cli. This allows me to completely skip modifying upstream’s build scripts, since they’re not used at all now.

Give it a try and let me know what you think. If you choose “Advanced” installation, any of the container scripts can be used to create an Incus VM now too!

1 Like