I've run into this issue too... initially I thought it was related to jumping from 22.12.0 to 22.12.2 but doing a fresh install back to 22.12.0 and restoring from the backup taken before upgrading still presented the same issue. Unfortunately I didn't bother to check if I could launch prior to the restore from backup
...
so to debug I've run an inspect in firefox for the websocket, I was able to see the following call when "launch docker" is clicked (hopefully not a redherring)..
response (server -> client) stating "reason": "[ENOENT] Unable to locate 'ix-chart' at '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'":
Code:
{"msg": "result", "id": "5a452ae7-2ac8-3e43-fde1-9d9b37749eba", "error": {"error": 2, "type": null, "reason": "[ENOENT] Unable to locate 'ix-chart' at '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'", "trace": {"class": "CallError", "frames": [{"filename": "/usr/lib/python3/dist-packages/middlewared/main.py", "lineno": 208, "method": "call_method", "line": " self.send_error(message, e.errno, str(e), sys.exc_info(), extra=e.extra)\n", "argspec": ["self", "message", "serviceobj", "methodobj"], "locals": {"self": "<middlewared.main.Application object at 0x7f8a44691a00>", "message": "{'id': '5a452ae7-2ac8-3e43-fde1-9d9b37749eba', 'msg': 'method', 'method': 'catalog.get_item_details', 'params': ['ix-chart', {'cache': True, 'catalog': 'OFFICIAL', 'train': 'charts'}]}", "serviceobj": "<CompoundService: <middlewared.plugins.catalogs_linux.items.CatalogService object at 0x7f8a7fffaf40>, <middlewared.plugins.catalogs_linux.features.CatalogService object at 0x7f8a800002b0>, <middlewared.plugins.catalogs_linux.sync_catalogs.CatalogService object at 0x7f8a800005b0>, <middlewared.plugins.catalogs_linux.update.CatalogService object at 0x7f8a80000550>, <middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>, <middlewared.plugins.catalogs_linux.validate.CatalogService object at 0x7f8a80000430>>", "methodobj": "<bound method accepts.<locals>.wrap.<locals>.nf of <middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>>", "params": "['ix-chart', {'cache': True, 'catalog': 'OFFICIAL', 'train': 'charts'}]", "e": "CallError(\"Unable to locate 'ix-chart' at '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'\")"}}, {"filename": "/usr/lib/python3/dist-packages/middlewared/main.py", "lineno": 1266, "method": "_call", "line": " return await self.run_in_executor(prepared_call.executor, methodobj, *prepared_call.args)\n", "argspec": ["self", "name", "serviceobj", "methodobj", "params"], "keywordspec": "kwargs", "locals": {"self": "<middlewared.main.Middleware object at 0x7f8a88ae90d0>", "name": "'catalog.get_item_details'", "serviceobj": "<CompoundService: <middlewared.plugins.catalogs_linux.items.CatalogService object at 0x7f8a7fffaf40>, <middlewared.plugins.catalogs_linux.features.CatalogService object at 0x7f8a800002b0>, <middlewared.plugins.catalogs_linux.sync_catalogs.CatalogService object at 0x7f8a800005b0>, <middlewared.plugins.catalogs_linux.update.CatalogService object at 0x7f8a80000550>, <middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>, <middlewared.plugins.catalogs_linux.validate.CatalogService object at 0x7f8a80000430>>", "methodobj": "<bound method accepts.<locals>.wrap.<locals>.nf of <middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>>", "params": "['ix-chart', {'cache': True, 'catalog': 'OFFICIAL', 'train': 'charts'}]", "kwargs": "{'app': <middlewared.main.Application object at 0x7f8a44691a00>}", "prepared_call": "<middlewared.main.PreparedCall object at 0x7f8a65fe2190>"}}, {"filename": "/usr/lib/python3/dist-packages/middlewared/main.py", "lineno": 1169, "method": "run_in_executor", "line": " return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))\n", "argspec": ["self", "pool", "method"], "varargspec": "args", "keywordspec": "kwargs", "locals": {"self": "<middlewared.main.Middleware object at 0x7f8a88ae90d0>", "pool": "<middlewared.utils.threading.IoThreadPoolExecutor object at 0x7f8a8cbd18e0>", "method": "<bound method accepts.<locals>.wrap.<locals>.nf of <middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>>", "args": "('***', '***')", "kwargs": "{}", "loop": "<_UnixSelectorEventLoop running=True closed=False debug=False>"}}, {"filename": "/usr/lib/python3.9/concurrent/futures/thread.py", "lineno": 58, "method": "run", "line": " self.future.set_result(result)\n", "argspec": ["self"], "locals": {"self": "None"}}, {"filename": "/usr/lib/python3/dist-packages/middlewared/schema.py", "lineno": 1288, "method": "nf", "line": " return func(*args, **kwargs)\n", "varargspec": "args", "keywordspec": "kwargs", "locals": {"args": "('***', '***', '***')", "kwargs": "{}", "clean_and_validate_args": "<function accepts.<locals>.wrap.<locals>.clean_and_validate_args at 0x7f8a81082310>", "func": "<function returns.<locals>.returns_internal.<locals>.nf at 0x7f8a81082430>"}}, {"filename": "/usr/lib/python3/dist-packages/middlewared/schema.py", "lineno": 1158, "method": "nf", "line": " res = f(*args, **kwargs)\n", "varargspec": "args", "keywordspec": "kwargs", "locals": {"args": "('***', '***', '***')", "kwargs": "{}", "f": "<function CatalogService.get_item_details at 0x7f8a810823a0>", "nf": "<function returns.<locals>.returns_internal.<locals>.nf at 0x7f8a81082430>"}}, {"filename": "/usr/lib/python3/dist-packages/middlewared/plugins/catalogs_linux/item_version.py", "lineno": 46, "method": "get_item_details", "line": " raise CallError(f'Unable to locate {item_name!r} at {item_location!r}', errno=errno.ENOENT)\n", "argspec": ["self", "item_name", "options"], "locals": {"self": "<middlewared.plugins.catalogs_linux.item_version.CatalogService object at 0x7f8a80000490>", "item_name": "'ix-chart'", "options": "{'cache': True, 'catalog': 'OFFICIAL', 'train': 'charts'}", "catalog": "{'label': 'OFFICIAL', 'repository': 'https://github.com/truenas/charts.git', 'branch': 'master', 'builtin': True, 'preferred_trains': ['charts'], 'location': '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master', 'id': 'OFFICIAL'}", "item_location": "'/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'"}}], "formatted": "Traceback (most recent call last):\n File \"/usr/lib/python3/dist-packages/middlewared/main.py\", line 181, in call_method\n result = await self.middleware._call(message['method'], serviceobj, methodobj, params, app=self)\n File \"/usr/lib/python3/dist-packages/middlewared/main.py\", line 1266, in _call\n return await self.run_in_executor(prepared_call.executor, methodobj, *prepared_call.args)\n File \"/usr/lib/python3/dist-packages/middlewared/main.py\", line 1169, in run_in_executor\n return await loop.run_in_executor(pool, functools.partial(method, *args, **kwargs))\n File \"/usr/lib/python3.9/concurrent/futures/thread.py\", line 52, in run\n result = self.fn(*self.args, **self.kwargs)\n File \"/usr/lib/python3/dist-packages/middlewared/schema.py\", line 1288, in nf\n return func(*args, **kwargs)\n File \"/usr/lib/python3/dist-packages/middlewared/schema.py\", line 1158, in nf\n res = f(*args, **kwargs)\n File \"/usr/lib/python3/dist-packages/middlewared/plugins/catalogs_linux/item_version.py\", line 46, in get_item_details\n raise CallError(f'Unable to locate {item_name!r} at {item_location!r}', errno=errno.ENOENT)\nmiddlewared.service_exception.CallError: [ENOENT] Unable to locate 'ix-chart' at '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'\n", "repr": "CallError(\"Unable to locate 'ix-chart' at '/mnt/volume1/ix-applications/catalogs/github_com_truenas_charts_git_master/charts/ix-chart'\")"}, "extra": null}}
and from the git log I see the following noting a move of ix-chart to ix-dev that looked to line up with the error from the inspect: