Migrating apps for people who missed the June 1st Apps Migration Deadline for TrueNAS 24.04 and 23.10

Dear forum people,

I missed the deadline for automatic migration, so would appreciate a bit of guidance how to do it the “hard way”.

I already migrated off TrueCharts apps and only using TrueNAS ones now. All up-to-date with the latest chart versions.

My apps are set up with default ixVolumes for config storage, but the actual data (like photos, etc) are always kept on Host Path volumes.

This the list of my apps:
adguard-home
filebrowser
immich
jellyfin
metube
prowlarr
qbittorrent
syncthing
tailscale

Thanks in advance!

In the same case of you, but not easy to find something…

The only option left is to manually re-create the apps. And in my opinion, it would have been a better option if you would have also used hostpath for the config storage. Because this would allow you to simply re-install the app, point to the existing hostpath for data and config and the app should start up just fine.
Now you have to see how to get the config out of the iXVolume (as mentioned preferably to a hostpath) and then re-create the app.

1 Like

I started researching this and found a few relevant threads:

Sounds like the job is to use SSH to copy the files from the ix volumes to a host path, or maybe zfs rename if you’re more adventurous.

Also sounds like it’s possible to edit the YAML config files of the current apps to verify that everything still works (and keep things working of the host path until you’re ready to upgrade).

I’m on holiday so won’t be able test this for a while, but I wanted to see what are the options.

I also missed the boat. Has anyone successfully upgraded?

Updating isn’t the problem, there are rarely problems with the truenas update itself. The Problem is that you will loose your apps and you will have to manually recreate them.
Depending on how your kubernetes apps are set up, it can be easy or hard.
The easy version would be if you’ve already used hostpaths for config storage and additional storage. Simply point the new install to the old Datasets and it should be fine.
The Hard version would be pvc for config storage. You will have to migrate the config data outside the pvc to datasets and then point the new install to the datasets using hostpaths.
If you’re using truecharts apps and you’re using apps like metalb to give your apps their own ip adresses or traefik for reverse proxy access it gets more complicated…
I’d suggest opening your own topic discribe which apps you use and how their storage is set up…

Yes, I meant more along the lines of “has anyone successfully migrated apps that were originally installed from the app catalog and has a step-by-step manual process that works after upgrading to 24.10 or 25.x”

EDIT: Found all the metadata here: Where exactly are Applications configuration stored? It's not in the Backup Sqlite! - #2 by eduncan911

Is there a way to Export the current apps installation configuration, before upgrading from 24.04? ENVs, HOST_PATHs, additional volumes, cpu, memory setting, etc.

Pure json/xml is fine. Anything that I can open and review, to recreate the apps after upgrading?

No that was one feature that was requested a lot but never got implemented.

I found all the metadata here:

FWIW… I ended up doing a manual migration of the apps.
For each app:

  1. I created a new subdirectory on a pool (a ‘host path’), and then copied all of the data from the ix-applications volume for that app to the subdir using rsync -a -v <src> <dst>
  2. Edit the app config to point to a host path
  3. Start the app to make sure it was happy
  4. Upgrade to electric eel 24.10
    None of the apps will be working at this point. For each app:
  5. Install the app from scratch. Set the app config to point to the host path(s) created earlier.
  6. Start the app to make sure it’s happy.
    Note that this did NOT work for all of the apps. There were some apps that had data layout changes that had occurred between 24.4 and 24.10, and those did not map 1:1 with the older data that was moved. I ran into one app that allowed the legacy layout, but deprecated it so that you couldn’t do a “new” installation with the old data layout.

Also note that some paths (and mount points) that were visible previously at a system-wide level won’t be automatically visible inside the container. Adding map entries is required to make things accessible. Ex: If you have SABnzbd downloading to a host path directory that Sonarr is expecting to see, you have to use the ‘add’ button in the app editor to map that directory into the Sonarr container so it is visible there.

I had some casualties, and still cleaning up some obsolete data, but I’m up and running on 24.10 currently.