Issues with apps - total unmanageable but sort of working

Good morning, apologies first i am very new to this and figuring my way round. I set up TrueNAS for the first time a few months ago and it just worked with no issues at all. So didnt need to know much. A couple of days ago i had a power cut and the system went off when it came back it had HDD errors but after a full scan the have gone and is showing as clear now but……

When i reboot my apps come back on but they are unmanageable. I cannot change them or delete them at all. i just get errors for everything. As an example i set up IMMICH but this is one of 3 that will not start at all (several other do start and run but can not change anything) as this will not start i decided to delete this and start again but when i do this is what i get

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 515, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 562, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 627, in run_in_thread
return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 624, in run_in_executor
return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/thread.py”, line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/service/crud_service.py”, line 294, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/api/base/decorator.py”, line 101, in wrapped
result = func(*args)
^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 300, in do_delete
return self.delete_internal(job, app_name, app_config, options)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 306, in delete_internal
compose_action(
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/compose_utils.py”, line 20, in compose_action
*[(‘-f’, item) for item in get_rendered_templates_of_app(app_name, app_version)]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py”, line 31, in get_rendered_templates_of_app
for entry in pathlib.Path(get_installed_app_rendered_dir_path(app_name, version)).iterdir():
File “/usr/lib/python3.11/pathlib.py”, line 932, in iterdir
for name in os.listdir(self):
^^^^^^^^^^^^^^^^
FileNotFoundError: [Errno 2] No such file or directory: ‘/mnt/.ix-apps/app_configs/immich/versions/1.11.4/templates/rendered’

I have gone through loads of help files etc advising commands and things to unmount, remount, remove, forceful remove, mount to another location, unset pool (this also doesn’t work and gets stuck), and loads of other stuff but nothing works so now i am looking for what next.

As i said i am new to this but not new to IT so i know there is not much in this but please let me know what you need to help and i will do my best to get it

thank you

Does the missing file in the error message exist?

In shell can you navigate to mnt/.ix-apps/app_configs/immich/versions/1.11.4/templates/rendered

1 Like

Yes it is there and in that folder there is a file called “docker-compose.yaml”

thank you

Its worth noting too that one of them is Plex, i cannot make changes to this if i go to the edit tab, it states there is an update but will not update but it does run except when i am in plex i will not update the library although it does work with what is there now. Its like its read only (sorry trying to explain in a way that makes sense to me)

So if it helps, if i go into the Plex one (this is running) and edit the setting (dont change anything just press save) i get this error

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 515, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 562, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 627, in run_in_thread
return await self.run_in_executor(io_thread_pool_executor, method, *args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 624, in run_in_executor
return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/thread.py”, line 58, in run
result = self.fn(*self.args, **self.kwargs)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/service/crud_service.py”, line 294, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/api/base/decorator.py”, line 101, in wrapped
result = func(*args)
^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 229, in do_update
app = self.update_internal(job, app, data, trigger_compose=app[‘state’] != ‘STOPPED’)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 259, in update_internal
update_app_config(app_name, app[‘version’], new_values, custom_app=app[‘custom_app’])
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py”, line 60, in update_app_config
render_compose_templates(
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/ix_apps/lifecycle.py”, line 51, in render_compose_templates
raise CallError(f’Failed to render compose templates: {cp.stderr}')
middlewared.service_exception.CallError: [EFAULT] Failed to render compose templates: Traceback (most recent call last):
File “/usr/bin/apps_render_app”, line 33, in
sys.exit(load_entry_point(‘apps-validation==0.1’, ‘console_scripts’, ‘apps_render_app’)())
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py”, line 48, in main
render_templates_from_path(args.path, args.values)
File “/usr/lib/python3/dist-packages/catalog_templating/scripts/render_compose.py”, line 19, in render_templates_from_path
rendered_data = render_templates(
^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/catalog_templating/render.py”, line 31, in render_templates
rendered_templates[i.name] = env.get_template(i.name).render(
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/jinja2/environment.py”, line 1301, in render
self.environment.handle_exception()
File “/usr/lib/python3/dist-packages/jinja2/environment.py”, line 936, in handle_exception
raise rewrite_traceback_stack(source=source)
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/docker-compose.yaml”, line 15, in top-level template code
{% do c1.add_storage(“/data”, values.storage.data) %}
^^^^^^^^^^^^^^^^^^^^^^^^^
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/library/base_v2_1_57/container.py”, line 299, in add_storage
self._storage.add(mount_path, config)
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/library/base_v2_1_57/storage.py”, line 97, in add
volume_mount = VolumeMount(self._render_instance, mount_path, config)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/library/base_v2_1_57/volume_mount.py”, line 35, in init
source = HostPathSource(self._render_instance, mount_config).get()
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/library/base_v2_1_57/volume_sources.py”, line 35, in init
self.source = allowed_fs_host_path_or_raise(path)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/mnt/.ix-apps/app_configs/plex/versions/1.2.16/templates/library/base_v2_1_57/validations.py”, line 244, in allowed_fs_host_path_or_raise
raise RenderError(f"Path [{path}] is not allowed to be mounted.")
base_v2_1_57.error.RenderError: Path [/mnt] is not allowed to be mounted.