TrueNAS CORETrueNAS CORE Nightly Development Documentation
This content follows experimental early release software. Use the Product and Version selectors above to view content specific to a stable software release.

Applications

With the rest of the system configured and data being shared over a network, the final step to consider for first time setup is installing any of the application solutions.

Applications or features added to TrueNAS are created in separate plugins, jails, or virtual machines that are kept separate from the base TrueNAS operating system. If anything goes wrong or a security vulnerability is exploited in one of these application environments, TrueNAS remains unaffected. These solutions safely expand TrueNAS capabilities in a restricted, safeguarded way.

The primary method to install applications is to use plugins. These are pre-packaged applications that quickly install in a tailor-made environment. Some plugins are supported by iXsystems while others are provided and maintained by the open source community.

A jail is a restricted FreeBSD operating system installed as a separate subset of TrueNAS. Jails can install a wide variety of applications and be tuned to very specific use cases, but they require more extensive knowledge of FreeBSD and command line operation.

A virtual machine is a fully independent operating system installation. This reserves or splits the available hardware resources to create a different, full operating system experience. TrueNAS can install Windows or Unix-like operating systems in a virtual machine (VM), but regular system performance is reduced while virtual machines are running.

Click one of the tabs below to see instructions on installing your preferred application solution.

Network Hardware Offloading Plugins that use a network interface need to Disable Hardware Offloading in Network -> Interface. Disabling hardware offloading can reduce general network performance for that interface, so it is recommended to use a secondary interface for application environments.

This instruction demonstrates adding a plugin by walking you through installing the community-favorite Plex application. You need an account with Plex to complete these instructions.

Installing Plex

Create a dataset called audio and a dataset called video to be used as mount points for Plex. Next, go to the Plugins page.

Installing a basic PlexMedia plugin:

  1. Select the Plex Media Server plugin and click INSTALL.

PlexInstallButton

  1. Enter a name in Jail Name. For example, plex or whatever name you prefer. DHCP is set automatically.
  2. Click SAVE.

PluginsPlexMediaSave

A dialog window shows the installation progress.

PluginsPlexInstallProgress

When available, Plugin Installation Notes display when the install completes.

The plugin Status shows as up, with the Boot option selected. 4. Add the Plex mount points. Click > to expand the Plex plugin row.

PluginsPlexJailUp

  1. Click Stop, then click Mount Points.

PluginsPlexSetMountpoints

  1. Click Actions, then Add.

JailsMountPointsPlexAddMountpoint

Fill out one mount point for each previously created dataset. The Source is the created dataset and the Destination is the media directory with /datasetname appended (see example):

JailsMountPointsPlexSetMountpoint

  1. Click Submit. Do this for as many mount points as needed. In this example, we have audio and video.

  2. Modify the dataset permissions for each dataset added as a mount point in Plex. Go to Storage > Pools and click for your source dataset, then click Edit Permissions.

StoragePoolsPlexEditPermissions

Click Create a custom ACL and Continue.

StoragePoolsPermissionsPlexACL

Click ADD ACL ITEM and enter the values pictured below:

StoragePoolsPermissionsPlexPermissions

Set Apply permissions recursively and click Save.

  1. Go to Plugins, find the Plex entry, and click the > to expand the row. Click Start to start the plugin.

Accessing Plex

When the Plex plugin status is up, click the >, then Manage.

PluginsPlexManage

Enter your Plex login information.

PluginsPlexLogin

PluginsPlexSuccess

Installing a Jail

  1. Go to the Jails page and click ADD.

    Jails

  2. Enter a name for the jail in Name, select the Release version, then click NEXT.

    JailsAddName

  3. To allow the jail access to the internet, set DHCP Autoconfigure IPv4 and click NEXT. Additional defaults are set when you select the DHCP option.

    JailsAddNetworkingDHCP

  4. Review the Jail Summary and click SUBMIT.

    JailsAddConfirm

Accessing a Jail

  1. Go to Jails and click the > next to the newly created jail. Click START.

    JailsStart

  2. When the jail State changes to up, click SHELL to see the jail command line.

    JailsShell

Installing a Virtual Machine

Virtual machines require uploading an operating system .iso to TrueNAS. This example shows using an Ubuntu .iso:

  1. Go to Virtual Machines and click ADD.

    VirtualMachines

  2. Select a Guest Operating System and enter a name in Name. For this example the guest operating system is set to Linux. Click NEXT.

    VirtualMachinesAddOperatingSystemLinux

  3. Enter the physical resources to give the VM. Larger numbers in Virtual CPUs, Cores, Threads, and Memory allow the VM to perform better, but reduce the performance of the TrueNAS system. Click NEXT.

    VirtualMachinesAddCPU

  4. Set Create a new disk image and select the VM storage from Zvol Location. Enter a usable storage number in Size (example shows 50 GiB) and click NEXT.

    VirtualMachinesAddDisks

  5. Network Interface automatically detects the hardware and sets defaults that allow network access. Make sure these settings are valid, then click NEXT.

    VirtualMachinesAddNetworkInterface

  6. Set Upload an installer image file to see additional options. Select a location on the TrueNAS system in ISO save location. Click Choose File and browse to the OS installation .iso. Click UPLOAD and wait for the process to finish (this can take some time). Click NEXT.

    VirtualMachinesAddInstallationMedia

  7. Confirm the VM configuration is correct and click SUBMIT.

    VirtualMachinesAddConfirm

Accessing a Virtual Machine

  1. Go to Virtual Machines and click > next to the newly created VM. Click START.

    VirtualMachinesStart

  2. When the VM State changes to up, click VNC to see the VM display.

    VirtualMachinesOptions

    Because this example uses an Ubuntu .iso, the Ubuntu installation screen shows.

    UbuntuInstall

    From here, install the OS as normal.

  3. After the OS install completes, go back to Virtual Machines, toggle the State, and click DEVICES.

    VirtualMachinesDevices

    Find the CDROM entry and click > Delete to remove the installation .iso from the VM and allow it to boot into the full OS the next time the VM activates.