Immich install fails on 24.10

I am getting these errors, and they don’t tell me anything. Can someone more knowledgable help?

I followed the official instructions, created 7 datasets with “app” user and group with full permissions.

This is immich version 1.7.21 included in the app store on truenas 24.12.
Thanks.

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 509, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 556, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, 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 1364, 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 268, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 55, in nf
res = f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 183, in nf
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 203, in do_create
return self.create_internal(job, app_name, version, data[‘values’], complete_app_details)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 248, in create_internal
raise e from None
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 241, in create_internal
compose_action(app_name, version, ‘up’, force_recreate=True, remove_orphans=True)
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/compose_utils.py”, line 57, in compose_action
raise CallError(
middlewared.service_exception.CallError: [EFAULT] Failed ‘up’ action for ‘immich’ app, please check /var/log/app_lifecycle.log for more details






tick the enable ACL option, immich uses postress as the db and it needs permission for a user with id 999.

All the 7 datasets that immich uses already have group-apps and user-apps having full permission. I don’t think ticking ACL does anything different.

It’s not apps user that postgress needs, its user id 999 netdata that needs permissions to r/w

See

I added full permission for user 999 with ticking ACL boxes for all 7 datasets. Now the installation still errors out saying “path not found”


What does the rest of that error message say? My guess would be you solved the postgres issue but now it’s erroring on your SMB share in additional storage.

This time I did not even put in SMB as external storage.
The rest of the error message seems very like the previous one, basically saying some python code has some errors. Not very intuitive at all.

the bottom of the error should have the path that caused the error

Or it should tell you to check the lifecycle log. If so, go to the shell and run sudo cat /var/log/app_lifecycle.log

Here is everything is default. I did not even use the host path. just using all default ixvolumes. Added user 999 for pgData.


Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 509, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 556, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, 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 1364, 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 268, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 55, in nf
res = f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 183, in nf
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 203, in do_create
return self.create_internal(job, app_name, version, data[‘values’], complete_app_details)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 248, in create_internal
raise e from None
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 241, in create_internal
compose_action(app_name, version, ‘up’, force_recreate=True, remove_orphans=True)
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/compose_utils.py”, line 57, in compose_action
raise CallError(
middlewared.service_exception.CallError: [EFAULT] Failed ‘up’ action for ‘immich’ app, please check /var/log/app_lifecycle.log for more details

Here is the app lifecycle log:

Network ix-immich_default Creating
Network ix-immich_default Created
Volume “ix-immich_redis-data” Creating
Volume “ix-immich_redis-data” Created
Volume “ix-immich_cifs_cbfb746879ca559dd53c120ad267ccf8dd4d4b49c907e0fe8fd950abd2807e3f” Creating
Volume “ix-immich_cifs_cbfb746879ca559dd53c120ad267ccf8dd4d4b49c907e0fe8fd950abd2807e3f” Created
Container ix-immich-permissions-1 Creating
time=“2025-01-24T06:17:31-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
time=“2025-01-24T06:17:31-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
Container ix-immich-permissions-1 Created
Container ix-immich-pgvecto-1 Creating
Container ix-immich-machine-learning-1 Creating
Container ix-immich-redis-1 Creating
Container ix-immich-redis-1 Created
Container ix-immich-pgvecto-1 Created
Container ix-immich-machine-learning-1 Created
Container ix-immich-server-1 Creating
Container ix-immich-server-1 Created
Container ix-immich-permissions-1 Starting
Container ix-immich-permissions-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-machine-learning-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-redis-1 Starting
Container ix-immich-pgvecto-1 Started
Container ix-immich-redis-1 Started
Container ix-immich-machine-learning-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-pgvecto-1 Waiting
Container ix-immich-redis-1 Waiting
Container ix-immich-machine-learning-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Error
Container ix-immich-redis-1 Healthy
Container ix-immich-machine-learning-1 Healthy
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

[2025/01/24 06:29:19] (ERROR) app_lifecycle.compose_action():56 - Failed ‘up’ action for ‘immich’ app: Network ix-immich_default Creating
Network ix-immich_default Created
Container ix-immich-permissions-1 Creating
time=“2025-01-24T06:29:11-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
time=“2025-01-24T06:29:11-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
Container ix-immich-permissions-1 Created
Container ix-immich-redis-1 Creating
Container ix-immich-pgvecto-1 Creating
Container ix-immich-machine-learning-1 Creating
Container ix-immich-redis-1 Created
Container ix-immich-pgvecto-1 Created
Container ix-immich-machine-learning-1 Created
Container ix-immich-server-1 Creating
Container ix-immich-server-1 Created
Container ix-immich-permissions-1 Starting
Container ix-immich-permissions-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-machine-learning-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-redis-1 Starting
Container ix-immich-machine-learning-1 Started
Container ix-immich-redis-1 Started
Container ix-immich-pgvecto-1 Started
Container ix-immich-pgvecto-1 Waiting
Container ix-immich-redis-1 Waiting
Container ix-immich-machine-learning-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Error
Container ix-immich-redis-1 Healthy
Container ix-immich-machine-learning-1 Healthy
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

[2025/01/24 06:31:14] (ERROR) app_lifecycle.compose_action():56 - Failed ‘up’ action for ‘immich’ app: Network ix-immich_default Creating
Network ix-immich_default Created
Container ix-immich-permissions-1 Creating
time=“2025-01-24T06:31:06-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
time=“2025-01-24T06:31:06-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
Container ix-immich-permissions-1 Created
Container ix-immich-redis-1 Creating
Container ix-immich-machine-learning-1 Creating
Container ix-immich-pgvecto-1 Creating
Container ix-immich-redis-1 Created
Container ix-immich-pgvecto-1 Created
Container ix-immich-machine-learning-1 Created
Container ix-immich-server-1 Creating
Container ix-immich-server-1 Created
Container ix-immich-permissions-1 Starting
Container ix-immich-permissions-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-permissions-1 Exited
Container ix-immich-permissions-1 Exited
Container ix-immich-redis-1 Starting
Container ix-immich-pgvecto-1 Starting
Container ix-immich-machine-learning-1 Starting
Container ix-immich-machine-learning-1 Started
Container ix-immich-redis-1 Started
Container ix-immich-pgvecto-1 Started
Container ix-immich-redis-1 Waiting
Container ix-immich-machine-learning-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-pgvecto-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Error
Container ix-immich-redis-1 Healthy
Container ix-immich-machine-learning-1 Healthy
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

[2025/01/24 11:34:04] (ERROR) app_lifecycle.compose_action():56 - Failed ‘up’ action for ‘immich’ app: Network ix-immich_default Creating
Network ix-immich_default Created
Container ix-immich-permissions-1 Creating
time=“2025-01-24T11:33:36-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
time=“2025-01-24T11:33:36-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
Container ix-immich-permissions-1 Created
Container ix-immich-redis-1 Creating
Container ix-immich-pgvecto-1 Creating
Container ix-immich-machine-learning-1 Creating
Container ix-immich-redis-1 Created
Container ix-immich-pgvecto-1 Created
Container ix-immich-machine-learning-1 Created
Container ix-immich-server-1 Creating
Container ix-immich-server-1 Created
Container ix-immich-permissions-1 Starting
Container ix-immich-permissions-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-redis-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-machine-learning-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Starting
Container ix-immich-redis-1 Started
Container ix-immich-machine-learning-1 Started
Container ix-immich-pgvecto-1 Started
Container ix-immich-machine-learning-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-pgvecto-1 Waiting
Container ix-immich-redis-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Error
Container ix-immich-redis-1 Healthy
Container ix-immich-machine-learning-1 Healthy
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

[2025/01/24 11:43:34] (ERROR) app_lifecycle.compose_action():56 - Failed ‘up’ action for ‘immich’ app: Network ix-immich_default Creating
Network ix-immich_default Created
Container ix-immich-permissions-1 Creating
time=“2025-01-24T11:43:26-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
time=“2025-01-24T11:43:26-08:00” level=warning msg=“config uid, gid and mode are not supported, they will be ignored”
Container ix-immich-permissions-1 Created
Container ix-immich-redis-1 Creating
Container ix-immich-pgvecto-1 Creating
Container ix-immich-machine-learning-1 Creating
Container ix-immich-redis-1 Created
Container ix-immich-pgvecto-1 Created
Container ix-immich-machine-learning-1 Created
Container ix-immich-server-1 Creating
Container ix-immich-server-1 Created
Container ix-immich-permissions-1 Starting
Container ix-immich-permissions-1 Started
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-redis-1 Starting
Container ix-immich-permissions-1 Exited
Container ix-immich-machine-learning-1 Starting
Container ix-immich-redis-1 Started
Container ix-immich-machine-learning-1 Started
Container ix-immich-pgvecto-1 Started
Container ix-immich-pgvecto-1 Waiting
Container ix-immich-redis-1 Waiting
Container ix-immich-machine-learning-1 Waiting
Container ix-immich-permissions-1 Waiting
Container ix-immich-permissions-1 Exited
Container ix-immich-pgvecto-1 Error
Container ix-immich-redis-1 Healthy
Container ix-immich-machine-learning-1 Healthy
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

Ok so they’re all complaining about Postgres permssions. It should have worked with the iXvolume, but if you manually added an entry for 999 on top of the permissions it would have automatically added, that may have created the issue.

In any case, my suggestion would be to either create a new dataset for postgres data using the Generic preset or strip the ACL from your existing one and then mount it as a host path and select Automatic Permissions here.
image

I have tried the following combinations:

  1. use host dataset for pgData, and set “automatic permission”
  2. use host dataset for pgData, and add ACL of user 999 with full permission
  3. use ix volume, do not add ACL
  4. use ix volume, add ACL of user 999 with full permission

I got the exact same error dialog in all 4 scenarios.
And the app lifecycle log always complains about:
dependency failed to start: container ix-immich-pgvecto-1 is unhealthy

The screenshot when you gave me the full error message and then checked app lifecycle had the ‘Failed up action’ error, this one has ‘Path does not exist’ which seems to point to a different problem, but you are both moving very quickly and not giving me full error messages/configs to look at for the issue so it’s hard to help here.

1 Like

OK, I will slow down.
Here is using host path for pdData, checked “automatic permission”


complete error message in the dialog:
Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 509, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 556, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, 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 1364, 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 268, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 55, in nf
res = f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 183, in nf
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 203, in do_create
return self.create_internal(job, app_name, version, data[‘values’], complete_app_details)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 215, in create_internal
new_values = self.middleware.call_sync(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1654, in call_sync
return self.run_coroutine(methodobj(*prepared_call.args))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1694, in run_coroutine
return fut.result()
^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/_base.py”, line 449, in result
return self.__get_result()
^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/_base.py”, line 401, in __get_result
raise self._exception
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/schema_normalization.py”, line 34, in normalize_and_validate_values
dict_obj = await self.middleware.call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1629, in call
return await self._call(
^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/schema_validation.py”, line 37, in validate_values
verrors.check()
File “/usr/lib/python3/dist-packages/middlewared/service_exception.py”, line 72, in check
raise self
middlewared.service_exception.ValidationErrors: [ENOENT] values.storage.backups.host_path_config.path: Path does not exist (underlying dataset may be locked or the path is just missing).

This is using ix volume for pgData.
Added ACL of user 999 with full permission.


Full error message in the error dialog:

Traceback (most recent call last):
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 509, in run
await self.future
File “/usr/lib/python3/dist-packages/middlewared/job.py”, line 556, in __run_body
rv = await self.middleware.run_in_thread(self.method, *args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1367, 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 1364, 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 268, in nf
rv = func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 55, in nf
res = f(*args, **kwargs)
^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/schema/processor.py”, line 183, in nf
return func(*args, **kwargs)
^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 203, in do_create
return self.create_internal(job, app_name, version, data[‘values’], complete_app_details)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py”, line 215, in create_internal
new_values = self.middleware.call_sync(
^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1654, in call_sync
return self.run_coroutine(methodobj(*prepared_call.args))
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1694, in run_coroutine
return fut.result()
^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/_base.py”, line 449, in result
return self.__get_result()
^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3.11/concurrent/futures/_base.py”, line 401, in __get_result
raise self._exception
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/schema_normalization.py”, line 34, in normalize_and_validate_values
dict_obj = await self.middleware.call(
^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1629, in call
return await self._call(
^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/main.py”, line 1460, in _call
return await methodobj(*prepared_call.args)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File “/usr/lib/python3/dist-packages/middlewared/plugins/apps/schema_validation.py”, line 37, in validate_values
verrors.check()
File “/usr/lib/python3/dist-packages/middlewared/service_exception.py”, line 72, in check
raise self
middlewared.service_exception.ValidationErrors: [ENOENT] values.storage.backups.host_path_config.path: Path does not exist (underlying dataset may be locked or the path is just missing).

On that last one are some of the other datasets still set to host paths? iXvolumes should not be saying a path doesn’t exist.

Maybe try using the dropdown to select your host paths instead of typing them in, so we can be sure they do exist and there is no typo?

Happened on my side as well. Fresh install of TrueNAS Scale and immich from apps. Selected host paths following the tutorial and enabled automatic permissions for pgData

Here’s the error as the installation failed

Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 509, in run
    await self.future
  File "/usr/lib/python3/dist-packages/middlewared/job.py", line 556, in __run_body
    rv = await self.middleware.run_in_thread(self.method, *args)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/main.py", line 1367, 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 1364, 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 268, in nf
    rv = func(*args, **kwargs)
         ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 55, in nf
    res = f(*args, **kwargs)
          ^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/schema/processor.py", line 183, in nf
    return func(*args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py", line 203, in do_create
    return self.create_internal(job, app_name, version, data['values'], complete_app_details)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py", line 248, in create_internal
    raise e from None
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/crud.py", line 241, in create_internal
    compose_action(app_name, version, 'up', force_recreate=True, remove_orphans=True)
  File "/usr/lib/python3/dist-packages/middlewared/plugins/apps/compose_utils.py", line 61, in compose_action
    raise CallError(err_msg)
middlewared.service_exception.CallError: [EFAULT] Failed 'up' action for 'immich' app. Please check /var/log/app_lifecycle.log for more details

Here’s app_lifecycle.log

[2025/01/28 22:36:53] (ERROR) app_lifecycle.compose_action():56 - Failed 'up' action for 'immich' app:  Network ix-immich_default  Creating
 Network ix-immich_default  Created
 Container ix-immich-permissions-1  Creating
time="2025-01-28T22:36:52-08:00" level=warning msg="config `uid`, `gid` and `mode` are not supported, they will be ignored"
time="2025-01-28T22:36:52-08:00" level=warning msg="config `uid`, `gid` and `mode` are not supported, they will be ignored"
 Container ix-immich-permissions-1  Created
 Container ix-immich-machine-learning-1  Creating
 Container ix-immich-pgvecto-1  Creating
 Container ix-immich-redis-1  Creating
 Container ix-immich-pgvecto-1  Created
 Container ix-immich-redis-1  Created
 Container ix-immich-machine-learning-1  Created
 Container ix-immich-server-1  Creating
 Container ix-immich-server-1  Created
 Container ix-immich-permissions-1  Starting
 Container ix-immich-permissions-1  Started
 Container ix-immich-permissions-1  Waiting
 Container ix-immich-permissions-1  Waiting
 Container ix-immich-permissions-1  Waiting
 Container ix-immich-permissions-1  Exited
 Container ix-immich-redis-1  Starting
 Container ix-immich-permissions-1  Exited
 Container ix-immich-machine-learning-1  Starting
 Container ix-immich-permissions-1  Exited
 Container ix-immich-pgvecto-1  Starting
 Container ix-immich-redis-1  Started
 Container ix-immich-pgvecto-1  Started
Error response from daemon: error gathering device information while adding custom device "/dev/dri": no such file or directory

Here’s the permission for pgData

truenas_admin@truenas[/mnt/Storage/immich]$ stat ./pgData
  File: ./pgData
  Size: 27              Blocks: 17         IO Block: 2048   directory
Device: 0,79    Inode: 34          Links: 20
Access: (0700/drwx------)  Uid: (  999/ netdata)   Gid: (  999/  docker)
Access: 2025-01-28 22:30:54.922425053 -0800
Modify: 2025-01-28 22:36:54.647853099 -0800
Change: 2025-01-28 22:36:54.647853099 -0800
 Birth: 2025-01-28 22:30:54.922425053 -0800

Also, selecting ixVolume for Postgres Data Storage doesn’t help. The same error appears.

Can someone try to install immich on the latest version of TrueNAS Scale? I think this problem is universal.