TrueNAS SCALE Version DocumentationThis content follows the TrueNAS SCALE 23.10 (Cobia) releases. Use the Product and Version selectors above to view content specific to different TrueNAS software or major version.
Install Custom App Screen
12 minute read.
Last Modified 2024-07-31 16:54 EDTThe apps article content is End of Life (EOL) for 23.10 (Cobia) which means this content is not currently maintained.
The Install Custom App screen allows you to configure third-party applications using settings based on Kubernetes. Use the wizard to configure applications not included in the TRUENAS catalog. The Install Custom button on the Discover application screen opens the Install Custom App configuration wizard.
The breadcrumbs in the top header link to other screens. Discover closes the Install Custom App screen and opens the Discover screen. ix-chart closes the Install Custom App screen and opens the Installed screen. The panel on the right of the screen links to each setting area. Click on a heading or setting to jump to that area of the screen. Click in the Search Input Fields to see a list of setting links.
Settings are grouped into Application Name, Container Images, Container Entrypoint, Container Environment Variables, Networking, Port Forwarding, Storage, Workload Details, Scaling/Upgrade Policy, Resource Limits, and Portal Configuration sections.
Application Name has two required settings, Application Name and version. After completing the installation these settings are not editable.
Container Images settings specify the container image details. They define the image tag, when TrueNAS pulls the image from the remote repository, how the container updates, and when a container automatically restarts.
Container Entrypoint settings specify both commands and arguments to use for the image. These can override any existing commands stored in the image. Check the documentation for the application you want to install for entry point commands or arguments you need to enter.
Container Environment Variables settings define additional environment variables for the container. Check the documentation for the image and add any required variables here.
Networking settings specify network policy, addresses, and DNS services if the container needs a custom networking configuration.
See the Kubernetes documentation for more details on host networking. You can create additional network interfaces for the container or give static IP addresses and routes to a new interface. By default, containers use the DNS settings from the host system. You can change the DNS policy and define separate nameservers and search domains. See the Kubernetes DNS services documentation for more details.
Port Forwarding settings specify the container and node ports, and the transfer protocol. Choose the protocol and enter port numbers for both the container and node. You can define multiple port forwards.
The Storage settings specify persistent host paths and share data that separate from the lifecycle of the container. Create the storage volumes in SCALE and set the host path volume to a dataset and directory path. You can mount SCALE storage locations inside the container with host path volumes. Define the path to the system storage and the container internal path for the system storage location to appear. For more details, see the Kubernetes HostPath documentation. Users can create additional Persistent Volumes (PVs) for storage within the container. PVs consume space from the pool chosen for application management. To do this, name each new dataset and define a path where that dataset appears inside the container.
Workload Details settings specify how to deploy workloads in the container (pod). Kubernetes defines workloads as applications running in the pod. Workload Details settings specify if containers in a pod run with TTY or STDIN enabled, allow enabling any device on the host or configuring host capabilities, and if you run the container as a user or group.
Scaling/Upgrade Strategy settings configure how application upgrades replace pods.
Select Create new pods and then kill the old ones to recreate the container. This retains the existing configuration and container until the upgrade completes before removing it.
Select Kill existing pods before creating new ones to do rolling upgrades. This removes the existing pod and start with a newly updated pod. Killing existing pods is useful if your old pod is not functioning properly. For fewer issues, select Kill existing pods before creating new ones.
Resource Reservation settings configure GPU device allocation for application processes. Settings only display if the system detects the GPU device(s).
Select the device on the Select GPU dropdown list of devices. Settings vary based on the device selected.
Resource Limits settings specify the CPU and memory limits to place on the Kubernetes pod.
The Portal Configuration settings configure the web UI portal for the container.
Select Enable WebUI Portal (only supported in TrueNAS SCALE Bluefin) to display the web portal configuration settings.