docker/helm/kubectl commands in shell

wfg

Cadet
Joined
Jun 13, 2021
Messages
1
I'm excited to see Linux-based TrueNAS shipping with Docker and Kubernetes!

I've been testing out the apps through the UI and began trying to convert my Docker Compose files to Helm then massaging those into TrueNAS-compatible charts. It's not impossible, but if I could cut out the last step, it'd save a lot of headache. I know it's possible to run docker/helm/kubectl manually, but is it going to be "supported" in TrueNAS SCALE, or are the UI apps going to be the only way to run container workloads?
 

overeat

Dabbler
Joined
Aug 31, 2021
Messages
20
Some info on kubectl and ports below 9000 with TrueNas SCALE

I was able to Sidebar -> Apps -> Launch Docker Image and then see my docker image as an "installed app"

There's some issues with ports/port mapping below 9000 which is mentioned in thread I posted above.

Hope this helps someone.
 

overeat

Dabbler
Joined
Aug 31, 2021
Messages
20
Also here's some useful kubectl commands for newbs
 

brando56894

Wizard
Joined
Feb 15, 2014
Messages
1,537
Traditionally IX Systems wants you to do everything via the GUI as the middleware does a lot of stuff that is bypassed if you go straight to the CLI, so most likely doing stuff outside of the GUI will always be unsupported, except for features in progress of course.
 

inman.turbo

Contributor
Joined
Aug 27, 2019
Messages
149
The middleware is essentially an event-sourced python app. It saves all of your actions in the GUI as events in an SQLite 'config' database. Then if you need to upgrade, switch trains, restore or migrate your system, it will replay all of your events to achieve the desired state.

If you bypass the GUI (and/or CLI) your actions will not be recorded, and the state of any new/restored (or possibly even just updated) system will not reflect any of your actions completed outside of the GUI (and/or CLI).

By CLI I mean the interactive TrueNas command line client. Not your standard system shell.

I should mention that it is not the GUI itself that does all of this, but the HTTP API that it sends it's requests through. This means that it is also possible to create your own clients, CLI or GUI, using the same API.
 
Last edited:
Top