Applications UI Lands in SCALE Nightly Images

stavros-k

Patron
Joined
Dec 26, 2020
Messages
231
I want to run, and then figure out how to get those applications into TrueNas - unless they somehow get those applications into the predefined repos that are installed with the platform.

Here is how you would add extra repos in SCALE -> https://truecharts.org/manual/adding-truecharts/


How do you develop / test a new chart? Do I have to have a registered repo (in whatever structure that is) and then push my helm chart data into that repo in order to get TrueNas to be able to try and deploy it?

Fork a repo like truecharts, add your helm pack in your repo. And follow the mentioned guide to add your repo to SCALE for test/develop


When adding docker containers manually, it would be really helpful if I could import a .env file from my local disk for configuring the container (or even load a docker-compose file and then let me select which container Id like to configure) then have TrueNas ask for the .env file referenced, and configure all the ports and directory mounts.

You can always make a suggestion in https://jira.ixsystems.com/ , but i doubt anything related to docker / docker-compose will be supported (at least for now) While it might work, is not supported and cannot guarantee data safety..



but I have no clue how to get this kompose output ( a ton of separate yaml files ) into TrueNas Scale
From a repo (truecharts (https://github.com/truecharts/apps) or official(https://github.com/truenas/charts)) find out the structure and a general idea and adjust your app. But i wouldn't start with an app that needs a DB.
Start simple first.
 

ornias

Wizard
Joined
Mar 6, 2020
Messages
1,458
Fork a repo like truecharts, add your helm pack in your repo. And follow the mentioned guide to add your repo to SCALE for test/develop
Why are you advising people to fork repo's? While we (as TrueCharts) literally released a template repository to use on github 2 weeks ago?
 

ornias

Wizard
Joined
Mar 6, 2020
Messages
1,458
From a repo (truecharts (https://github.com/truecharts/apps) or official(https://github.com/truenas/charts)) find out the structure and a general idea and adjust your app. But i wouldn't start with an app that needs a DB.
Start simple first.
Or use native helm, which is also not officially supported.


Thats also why I don't get why @morganL keeps promoting kompose.
Both docker-compose, docker and native-helm aren't officially iX supported afaik.

So he advices replacing not-officially-supported solution 1 which someone understands, with not-officially-supported solution 2 which someone doesn't understand and doesnt even work out-of-the-box80% of the time.

yes I do understand helm should work (tm) where docker-compose doesn't work on stock SCALE without a modification to /etc/docker/deamon.json
But in the end, both are not officially supported ATM.
 

StanAccy

Dabbler
Joined
Apr 23, 2021
Messages
20
Or use native helm, which is also not officially supported.


Thats also why I don't get why @morganL keeps promoting kompose.
Both docker-compose, docker and native-helm aren't officially iX supported afaik.

So he advices replacing not-officially-supported solution 1 which someone understands, with not-officially-supported solution 2 which someone doesn't understand and doesnt even work out-of-the-box80% of the time.

yes I do understand helm should work (tm) where docker-compose doesn't work on stock SCALE without a modification to /etc/docker/deamon.json
But in the end, both are not officially supported ATM.

Ok, Im glad you clarified that since I was wondering what the purpose of the K8S support is here or what the aim is from a client usage standpoint. I'm all for supporting defacto standard stuff (and I would argue that docker usage >> kube usage >> helm usage at this point), so to maximize client uptake, perhaps focus easing the path to end users in a left-to-right manner. I guess this depends on what the target market is - I'm using this for home stuff, and since most home stuff/containers arent designed to be run in HA modes, then having an ability to run an auto-scaling group of multiple instances doesn't make sense (would be useless), whereas it would for production business deployments of custom applications that are designed to be HA / load-balanced.

So as a feature request, it would be nice if I could take a docker-compose file and just have it work with a simple import, and then pick nice defaults for the kube portion - #pods=1, create the volumes etc. jm2c. The value add of container/kube suport is massively reduced (to me) if I have to go learn an entirely new set of technologies.
 

ornias

Wizard
Joined
Mar 6, 2020
Messages
1,458
Stop talking about HA and complicated K8S stuff.
Everyone does all the time and that has nothing to do with it at all. At truecharts we don't even support it.
k8s is just a syntax and management thing like docker-compose. Thats basically it.

It's rather anoying when people that don't know their shit, start telling other people why they don't want to use a solution because of features they don't even have to use.

You can just load your damn container via the bug-blue-button on the page, thats the docker-compose equivalent for SCALE.
I don't see why you need to start demanding to use docker-compose, while it takes about... 5 minutes to enter the right settings into the popup from the big-blue-button.

You just want to port 2 containers, so you just hit the button twice and add them to SCALE. Did you even try to do that, instead of kompose and complaining?
 

StanAccy

Dabbler
Joined
Apr 23, 2021
Messages
20
Then I'm clearly missing the point of this "kubernetes" support then. Are you saying that TrueNas scale is going to run its own kubernetes-like thing and not be using standard stuff?

As for why I would want to use a compose file rather than manually entering separate container configs - it's easier. I've got several stacks that use between 2 and 7 containers. Right now, to run them, its a 'docker-compose up -build -d' command and Im off to the races. 'docker-compose down' and things stop. Simple. I thought (and I could well be wrong/incorrect here) was that the point of the applications support in TrueNas scale was to provide an easy way to run containerized apps backed by a resilient scalable disk storage, with multi-node support provided by multiple linked boxes.

If its not, then what's the purpose - a custom set of curated application scripts?
 

morganL

Captain Morgan
Administrator
Moderator
iXsystems
Joined
Mar 10, 2018
Messages
2,694
Then I'm clearly missing the point of this "kubernetes" support then. Are you saying that TrueNas scale is going to run its own kubernetes-like thing and not be using standard stuff?

As for why I would want to use a compose file rather than manually entering separate container configs - it's easier. I've got several stacks that use between 2 and 7 containers. Right now, to run them, its a 'docker-compose up -build -d' command and Im off to the races. 'docker-compose down' and things stop. Simple. I thought (and I could well be wrong/incorrect here) was that the point of the applications support in TrueNas scale was to provide an easy way to run containerized apps backed by a resilient scalable disk storage, with multi-node support provided by multiple linked boxes.

If its not, then what's the purpose - a custom set of curated application scripts?
There's nothing wrong with Docker and docker compose. They are both useful tools.

However, the IT world has generally decided to use docker containers but move toward Kubernetes. Kubernetes is more extensible... including clusters.. and not tied to Docker the company. For TrueNAS SCALE, we had to decide to do one thing well.. and we chose Kubernetes. Kubernetes uses Helm charts and not docker compose.

In the end, the larger ecosystem and the broader capability set of Kubernetes will be an advantage to most users. However, in the short term, it does require users to change tools from Docker Compose and embrace the Helm chart model. Tools like Kompose try to automate the process, but its seems that there always manual fixes needed. Perhaps that automation can be improved, but getting the general software to Release state is higher priority.

TrueNAS SCALE will then offer three choices, the ability to run docker containers, multiple libraries of curated scripts for common multi-containers applications, plus the ability to build your own stacks or applications via Helm charts.
 
Top