Jelllyfin stuck at "Deploying"

As the title says, I am trying to setup Jellyfin, but seems to be stuck “Deploying”.

This is a container available from the list, not a “custom app”.

According to the logs, /cache/transcodes

2025-03-10 00:13:10.149698+00:00[17:13:10] [ERR] [8] Emby.Server.Implementations.ScheduledTasks.TaskManager: Error executing Scheduled Task

2025-03-10 00:13:10.149845+00:00System.UnauthorizedAccessException: Access to the path '/cache/transcodes' is denied.

2025-03-10 00:13:10.149867+00:00---> System.IO.IOException: Permission denied

2025-03-10 00:13:10.149888+00:00--- End of inner exception stack trace ---

2025-03-10 00:13:10.151238+00:00[17:13:10] [INF] [8] Emby.Server.Implementations.ScheduledTasks.TaskManager: Clean Transcode Directory Failed after 0 minute(s) and 0 seconds

2025-03-10 00:13:18.873752+00:00[17:13:18] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete

App Version:
1.10.6
Version:
1.1.20
Source:
hub.docker.com/r/jellyfin/jellyfin, jellyfin.org

Troubleshooting steps:

  • Rolling back to an older version (when I could)
  • Deleting the container & starting from scratch (lost my ability to roll back to an older version in doing so)

OS Version: TrueNAS-SCALE-24.10.2

The ACL Entries for all of my Host Paths are the same. Though, it looks like /cache/transcodes is the [internal] mount path inside the container…

My experience with containers is somewhat limited, so any advice on what I am doing wrong, and how to fix it will be much appreciated.

Update: Removing the Enable ACL option, & adding user & group 568 to the relevant dataset permissions (and set to Full Control), seems to have cleared up the “Permission Denied” error in the logs. However, it is still stuck at deploying.

What are the logs showing now?

Is /cache/transcodes binding to another path? Does the 568 user have permissions to the path it’s binding to?

 1) 2025-03-10 15:22:17.337085+00:00[08:22:17] [INF] [1] Main: Jellyfin version: 10.10.6

 2) 2025-03-10 15:22:17.351417+00:00[08:22:17] [INF] [1] Main: Environment Variables: ["[JELLYFIN_CACHE_DIR, /cache]", "[JELLYFIN_CONFIG_DIR, /config/config]", "[JELLYFIN_DATA_DIR, /config]", "[JELLYFIN_LOG_DIR, /config/log]", "[JELLYFIN_FFMPEG, /usr/lib/jellyfin-ffmpeg/ffmpeg]", "[JELLYFIN_WEB_DIR, /jellyfin/jellyfin-web]"]

 3) 2025-03-10 15:22:17.351659+00:00[08:22:17] [INF] [1] Main: Arguments: ["/jellyfin/jellyfin.dll"]

 4) 2025-03-10 15:22:17.352236+00:00[08:22:17] [INF] [1] Main: Operating system: Debian GNU/Linux 12 (bookworm)

 5) 2025-03-10 15:22:17.353488+00:00[08:22:17] [INF] [1] Main: Architecture: X64

 6) 2025-03-10 15:22:17.353621+00:00[08:22:17] [INF] [1] Main: 64-Bit Process: True

 7) 2025-03-10 15:22:17.353676+00:00[08:22:17] [INF] [1] Main: User Interactive: True

 8) 2025-03-10 15:22:17.353753+00:00[08:22:17] [INF] [1] Main: Processor count: 2

 9) 2025-03-10 15:22:17.353879+00:00[08:22:17] [INF] [1] Main: Program data path: /config

10) 2025-03-10 15:22:17.353989+00:00[08:22:17] [INF] [1] Main: Log directory path: /config/log

11) 2025-03-10 15:22:17.354016+00:00[08:22:17] [INF] [1] Main: Config directory path: /config/config

12) 2025-03-10 15:22:17.354171+00:00[08:22:17] [INF] [1] Main: Cache path: /cache

13) 2025-03-10 15:22:17.354362+00:00[08:22:17] [INF] [1] Main: Temp directory path: /tmp/jellyfin

14) 2025-03-10 15:22:17.354483+00:00[08:22:17] [INF] [1] Main: Web resources path: /jellyfin/jellyfin-web

15) 2025-03-10 15:22:17.354614+00:00[08:22:17] [INF] [1] Main: Application directory: /jellyfin/

16) 2025-03-10 15:22:17.682333+00:00[08:22:17] [INF] [1] Emby.Server.Implementations.AppBase.BaseConfigurationManager: Setting cache path: /cache

17) 2025-03-10 15:22:17.841902+00:00[08:22:17] [INF] [1] Emby.Server.Implementations.ApplicationHost: Loading assemblies

18) 2025-03-10 15:22:17.892204+00:00[08:22:17] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.AniDB, Version=10.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/AniDB_10.0.0.0/Jellyfin.Plugin.AniDB.dll

19) 2025-03-10 15:22:17.899756+00:00[08:22:17] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.AniList, Version=11.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/AniList_11.0.0.0/Jellyfin.Plugin.AniList.dll

20) 2025-03-10 15:22:17.903305+00:00[08:22:17] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded assembly Jellyfin.Plugin.AniSearch, Version=5.0.0.0, Culture=neutral, PublicKeyToken=null from /config/plugins/AniSearch_5.0.0.0/Jellyfin.Plugin.AniSearch.dll

21) 2025-03-10 15:22:18.061487+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]

22) 2025-03-10 15:22:18.061673+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Defined LAN exclusions: []

23) 2025-03-10 15:22:18.062432+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Used LAN subnets: ["127.0.0.1/8", "10.0.0.0/8", "172.16.0.0/12", "192.168.0.0/16"]

24) 2025-03-10 15:22:18.064954+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered interface addresses: ["127.0.0.1", "172.16.3.2"]

25) 2025-03-10 15:22:18.066116+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Bind Addresses ["0.0.0.0"]

26) 2025-03-10 15:22:18.066271+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Remote IP filter is Allowlist

27) 2025-03-10 15:22:18.066432+00:00[08:22:18] [INF] [1] Jellyfin.Networking.Manager.NetworkManager: Filtered subnets: []

28) 2025-03-10 15:22:21.944235+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AniDB 10.0.0.0

29) 2025-03-10 15:22:21.947252+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AniList 11.0.0.0

30) 2025-03-10 15:22:21.953013+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AniSearch 5.0.0.0

31) 2025-03-10 15:22:21.954117+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: TMDb 10.10.6.0

32) 2025-03-10 15:22:21.954729+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: Studio Images 10.10.6.0

33) 2025-03-10 15:22:21.955287+00:00[08:22:21] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: OMDb 10.10.6.0

34) 2025-03-10 15:22:22.003958+00:00[08:22:22] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: MusicBrainz 10.10.6.0

35) 2025-03-10 15:22:22.004572+00:00[08:22:22] [INF] [1] Emby.Server.Implementations.Plugins.PluginManager: Loaded plugin: AudioDB 10.10.6.0

36) 2025-03-10 15:22:22.157764+00:00[08:22:22] [WRN] [1] Microsoft.AspNetCore.DataProtection.Repositories.EphemeralXmlRepository: Using an in-memory repository. Keys will not be persisted to storage.

37) 2025-03-10 15:22:22.158090+00:00[08:22:22] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: Neither user profile nor HKLM registry available. Using an ephemeral key repository. Protected data will be unavailable when application exits.

38) 2025-03-10 15:22:22.250052+00:00[08:22:22] [INF] [1] Main: Kestrel is listening on 0.0.0.0

39) 2025-03-10 15:22:22.284579+00:00[08:22:22] [WRN] [1] Microsoft.AspNetCore.DataProtection.KeyManagement.XmlKeyManager: No XML encryptor configured. Key {eb8e06a3-c7e1-46c2-bc18-4403ebcd7a14} may be persisted to storage in unencrypted form.

40) 2025-03-10 15:22:22.766772+00:00[08:22:22] [INF] [1] Jellyfin.Networking.PortForwardingHost: Starting NAT discovery

41) 2025-03-10 15:22:23.855781+00:00[08:22:23] [WRN] [1] Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware: The WebRootPath was not found: /wwwroot. Static files may be unavailable.

42) 2025-03-10 15:22:23.941039+00:00[08:22:23] [INF] [1] Emby.Server.Implementations.ApplicationHost: Running startup tasks

43) 2025-03-10 15:22:23.944720+00:00[08:22:23] [INF] [10] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /media/shows

44) 2025-03-10 15:22:23.949938+00:00[08:22:23] [INF] [8] Emby.Server.Implementations.IO.LibraryMonitor: Watching directory /media/movies

45) 2025-03-10 15:22:23.991533+00:00[08:22:23] [INF] [1] Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Generate Trickplay Images set to fire at 2025-03-11 03:00:00.000 -07:00, which is 18:37:36.0136027 from now.

46) 2025-03-10 15:22:24.000618+00:00[08:22:24] [INF] [1] 
Emby.Server.Implementations.ScheduledTasks.TaskManager: Daily trigger for Extract Chapter Images set to fire at 2025-03-11 02:00:00.000 -07:00, which is 17:37:35.9995933 from now.

47) 2025-03-10 15:22:24.067568+00:00[08:22:24] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Found ffmpeg version 7.0.2

48) 2025-03-10 15:22:24.211102+00:00[08:22:24] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available decoders: ["libdav1d", "av1", "av1_cuvid", "av1_qsv", "h264", "h264_qsv", "h264_cuvid", "hevc", "hevc_qsv", "hevc_cuvid", "mpeg2video", "mpeg2_qsv", "mpeg2_cuvid", "mpeg4", "mpeg4_cuvid", "msmpeg4", "vc1_qsv", "vc1_cuvid", "vp8", "libvpx", "vp8_cuvid", "vp8_qsv", "vp9", "libvpx-vp9", "vp9_cuvid", "vp9_qsv", "aac", "ac3", "ac4", "dca", "flac", "mp3", "truehd"]

49) 2025-03-10 15:22:24.249197+00:00[08:22:24] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available encoders: ["libsvtav1", "av1_nvenc", "av1_qsv", "av1_amf", "av1_vaapi", "libx264", "h264_amf", "h264_nvenc", "h264_qsv", "h264_v4l2m2m", "h264_vaapi", "libx265", "hevc_amf", "hevc_nvenc", "hevc_qsv", "hevc_vaapi", "mjpeg_qsv", "mjpeg_vaapi", "aac", "libfdk_aac", "ac3", "alac", "dca", "flac", "libmp3lame", "libopus", "truehd", "libvorbis", "srt"]

50) 2025-03-10 15:22:24.290458+00:00[08:22:24] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available filters: ["bwdif_cuda", "deinterlace_qsv", "deinterlace_vaapi", "flip_vulkan", "hwupload_cuda", "hwupload_vaapi", "libplacebo", "overlay_opencl", "overlay_qsv", "overlay_vaapi", "overlay_vulkan", "overlay_cuda", "procamp_vaapi", "scale_cuda", "scale_opencl", "scale_qsv", "scale_vaapi", "scale_vulkan", "tonemapx", "tonemap_cuda", "tonemap_opencl", "tonemap_vaapi", "transpose_cuda", "transpose_opencl", "transpose_vaapi", "transpose_vulkan", "vpp_qsv", "yadif_cuda", "zscale", "alphasrc"]

51) 2025-03-10 15:22:24.561470+00:00[08:22:24] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: Available hwaccel types: ["cuda", "vaapi", "qsv", "drm", "opencl", "vulkan"]

52) 2025-03-10 15:22:27.029439+00:00[08:22:27] [INF] [10] Emby.Server.Implementations.ScheduledTasks.TaskManager: Clean Transcode Directory Completed after 0 minute(s) and 0 seconds

53) 2025-03-10 15:22:27.045755+00:00[08:22:27] [INF] [13] Emby.Server.Implementations.ScheduledTasks.TaskManager: Clean up collections and playlists Completed after 0 minute(s) and 0 seconds

54) 2025-03-10 15:22:28.831592+00:00[08:22:28] [INF] [10] Emby.Server.Implementations.ScheduledTasks.TaskManager: Update Plugins Completed after 0 minute(s) and 1 seconds

55) 2025-03-10 15:22:35.707333+00:00[08:22:35] [INF] [1] MediaBrowser.MediaEncoding.Encoder.MediaEncoder: FFmpeg: /usr/lib/jellyfin-ffmpeg/ffmpeg

56) 2025-03-10 15:22:35.709109+00:00[08:22:35] [INF] [1] Emby.Server.Implementations.ApplicationHost: ServerId: ed0ccd5b8000419d9a4f6c101cbfc074

57) 2025-03-10 15:22:35.709983+00:00[08:22:35] [INF] [1] Emby.Server.Implementations.ApplicationHost: Core startup complete

58) 2025-03-10 15:22:35.710154+00:00[08:22:35] [INF] [1] Main: Startup complete 0:00:18.8066746

Nothing in the logs stands out (to me) on why it’s hanging.

I do see lines 36, 37, 39, & 41 make reference to Microsoft AspNetCore, which I find odd. Other than that, nothing is jumping out at me as to why it is hanging.

@Jorsher The update in my last post had already fixed the permission issue in the logs.

Now I’m stumped. The logs says the Core & Main startups are complete, yet still cannot access the WebUI.

I was hoping the latest update to Jellyfin would fix the issue. No dice.

I was successfully able to create 2 other containers, & connect to the WebUI.

I also tried rebooting my TrueNAS server itself.

Does it need to scrape the metadata before it starts up for the first time?

If so, that could explain why it appears to be stuck (I’m just spitballing ideas & see what sticks). If not, then I must be missing something in the logs.

any advice or suggestions is very welcome.