Jellyfin in Docker problem

Hi guys,

I’m new to Jellyfin, but it looks great and I installed it in Docker on OMV but I have trouble running it. The following log is created by the Docker and the Jellyfin server is not reachable at my desired IP.
Can you please tell me why?
Thanks a lot.

       at SQLitePCL.pretty.DatabaseConnection.Execute(IDatabaseConnection This, String sql),
   at Emby.Server.Implementations.Data.BaseSqliteRepository.GetConnection(Boolean _),
   at Emby.Server.Implementations.Security.AuthenticationRepository.Initialize(),
   at Emby.Server.Implementations.ApplicationHost.GetAuthenticationRepository(),
   at Emby.Server.Implementations.ApplicationHost.RegisterResources(IServiceCollection serviceCollection),
   at Emby.Server.Implementations.ApplicationHost.InitAsync(IServiceCollection serviceCollection),
   at Jellyfin.Server.Program.StartApp(StartupOptions options),
[17:42:42] [INF] [1] App: Disposing CoreAppHost,
[17:42:42] [INF] [2] Main: Received a SIGTERM signal, shutting down,
[17:42:42] [INF] [1] Main: Jellyfin version: 10.5.5,
[17:42:42] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"],
[17:42:42] [INF] [1] Main: Operating system: Linux,
[17:42:42] [INF] [1] Main: Architecture: X64,
[17:42:42] [INF] [1] Main: 64-Bit Process: True,
[17:42:42] [INF] [1] Main: User Interactive: True,
[17:42:42] [INF] [1] Main: Processor count: 4,
[17:42:42] [INF] [1] Main: Program data path: /config/data,
[17:42:42] [INF] [1] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web,
[17:42:42] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/,
[17:42:43] [INF] [1] ServerConfigurationManager: Setting cache path: /config/cache,
[17:42:43] [INF] [1] App: Loading assemblies,
[17:42:43] [FTL] [1] Main: Error while starting server.,
ReadOnly: SQLitePCL.pretty.SQLiteException: attempt to write a readonly database,
   at SQLitePCL.pretty.SQLiteException.Throw(Int32 rc, Int32 extended, String msg),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3 db, Int32 rc),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3_stmt stmt, Int32 rc),
   at SQLitePCL.pretty.StatementImpl.MoveNext(),
   at SQLitePCL.pretty.DatabaseConnection.Execute(IDatabaseConnection This, String sql),
   at Emby.Server.Implementations.Data.BaseSqliteRepository.GetConnection(Boolean _),
   at Emby.Server.Implementations.Security.AuthenticationRepository.Initialize(),
   at Emby.Server.Implementations.ApplicationHost.GetAuthenticationRepository(),
   at Emby.Server.Implementations.ApplicationHost.RegisterResources(IServiceCollection serviceCollection),
   at Emby.Server.Implementations.ApplicationHost.InitAsync(IServiceCollection serviceCollection),
   at Jellyfin.Server.Program.StartApp(StartupOptions options),
[17:42:43] [INF] [1] App: Disposing CoreAppHost,
[17:42:43] [INF] [2] Main: Received a SIGTERM signal, shutting down,
[17:42:43] [INF] [1] Main: Jellyfin version: 10.5.5,
[17:42:43] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"],
[17:42:43] [INF] [1] Main: Operating system: Linux,
[17:42:43] [INF] [1] Main: Architecture: X64,
[17:42:43] [INF] [1] Main: 64-Bit Process: True,
[17:42:43] [INF] [1] Main: User Interactive: True,
[17:42:43] [INF] [1] Main: Processor count: 4,
[17:42:43] [INF] [1] Main: Program data path: /config/data,
[17:42:43] [INF] [1] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web,
[17:42:43] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/,
[17:42:44] [INF] [1] ServerConfigurationManager: Setting cache path: /config/cache,
[17:42:44] [INF] [1] App: Loading assemblies,
[17:42:44] [FTL] [1] Main: Error while starting server.,
ReadOnly: SQLitePCL.pretty.SQLiteException: attempt to write a readonly database,
   at SQLitePCL.pretty.SQLiteException.Throw(Int32 rc, Int32 extended, String msg),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3 db, Int32 rc),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3_stmt stmt, Int32 rc),
   at SQLitePCL.pretty.StatementImpl.MoveNext(),
   at SQLitePCL.pretty.DatabaseConnection.Execute(IDatabaseConnection This, String sql),
   at Emby.Server.Implementations.Data.BaseSqliteRepository.GetConnection(Boolean _),
   at Emby.Server.Implementations.Security.AuthenticationRepository.Initialize(),
   at Emby.Server.Implementations.ApplicationHost.GetAuthenticationRepository(),
   at Emby.Server.Implementations.ApplicationHost.RegisterResources(IServiceCollection serviceCollection),
   at Emby.Server.Implementations.ApplicationHost.InitAsync(IServiceCollection serviceCollection),
   at Jellyfin.Server.Program.StartApp(StartupOptions options),
[17:42:44] [INF] [1] App: Disposing CoreAppHost,
[17:42:44] [INF] [2] Main: Received a SIGTERM signal, shutting down,
[17:42:44] [INF] [1] Main: Jellyfin version: 10.5.5,
[17:42:44] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"],
[17:42:44] [INF] [1] Main: Operating system: Linux,
[17:42:44] [INF] [1] Main: Architecture: X64,
[17:42:44] [INF] [1] Main: 64-Bit Process: True,
[17:42:44] [INF] [1] Main: User Interactive: True,
[17:42:44] [INF] [1] Main: Processor count: 4,
[17:42:44] [INF] [1] Main: Program data path: /config/data,
[17:42:44] [INF] [1] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web,
[17:42:44] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/,
[17:42:45] [INF] [1] ServerConfigurationManager: Setting cache path: /config/cache,
[17:42:45] [INF] [1] App: Loading assemblies,
[17:42:45] [FTL] [1] Main: Error while starting server.,
ReadOnly: SQLitePCL.pretty.SQLiteException: attempt to write a readonly database,
   at SQLitePCL.pretty.SQLiteException.Throw(Int32 rc, Int32 extended, String msg),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3 db, Int32 rc),
   at SQLitePCL.pretty.SQLiteException.CheckOk(sqlite3_stmt stmt, Int32 rc),
   at SQLitePCL.pretty.StatementImpl.MoveNext(),
   at SQLitePCL.pretty.DatabaseConnection.Execute(IDatabaseConnection This, String sql),
   at Emby.Server.Implementations.Data.BaseSqliteRepository.GetConnection(Boolean _),
   at Emby.Server.Implementations.Security.AuthenticationRepository.Initialize(),
   at Emby.Server.Implementations.ApplicationHost.GetAuthenticationRepository(),
   at Emby.Server.Implementations.ApplicationHost.RegisterResources(IServiceCollection serviceCollection),
   at Emby.Server.Implementations.ApplicationHost.InitAsync(IServiceCollection serviceCollection),
   at Jellyfin.Server.Program.StartApp(StartupOptions options),
[17:42:45] [INF] [1] App: Disposing CoreAppHost,
[17:42:45] [INF] [2] Main: Received a SIGTERM signal, shutting down,
[17:42:46] [INF] [1] Main: Jellyfin version: 10.5.5,
[17:42:46] [INF] [1] Main: Arguments: ["/usr/lib/jellyfin/bin/jellyfin.dll", "--ffmpeg=/usr/lib/jellyfin-ffmpeg/ffmpeg"],
[17:42:46] [INF] [1] Main: Operating system: Linux,
[17:42:46] [INF] [1] Main: Architecture: X64,
[17:42:46] [INF] [1] Main: 64-Bit Process: True,
[17:42:46] [INF] [1] Main: User Interactive: True,
[17:42:46] [INF] [1] Main: Processor count: 4,
[17:42:46] [INF] [1] Main: Program data path: /config/data,
[17:42:46] [INF] [1] Main: Web resources path: /usr/lib/jellyfin/bin/jellyfin-web,
[17:42:46] [INF] [1] Main: Application directory: /usr/lib/jellyfin/bin/,

The error message about writing to a readonly database sounds like it’s already started, and you’re running a second copy somehow.

I don’t use the Docker distributions personally, but I’ll ask around for you.

Thanks a lot.
So what I did.
I installed Jellyfin in the Docker (in the Portraitier as a Stack) as mentioned here: https://www.youtube.com/watch?v=Q783xqjD2wI&feature=youtu.be
Then I noticed that no Movies are shown on my iPad App.
And then I tried to restart the Jellyfin Docker but now Jellyfin is not reachable anymore.

Just to be sure, you only have it installed once, right? You don’t happen to have another Jellyfin around somewhere, pointing to the same config?

Yes, the server is only on my NAS (I hope, but how can I check it to be safe?), and I wanted to share it to my iPad/AppleTV to view the movies.

Have you checked docker ps to ensure there isn’t more than one instance of Jellyfin running?

Here’s my docker-compose file. Pay particular attention to where the config directory is and PUID & PGID (to find the correct PUID & PGID terminal id -u yourusername).

Commands may differ.

the docker ps gives me the following:

    CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                                                              NAMES
    394ea147d723        linuxserver/jellyfin          "/init"                  40 hours ago        Up 40 hours         0.0.0.0:8096->8096/tcp, 8920/tcp                                   jellyfin
    6de2b86b6d2d        linuxserver/plex:latest       "/init"                  11 days ago         Up 2 days                                                                              plex
    81f0e4acc540        ownyourbits/nextcloudpi-x86   "/run-parts.sh 192.1…"   6 weeks ago         Up 2 weeks          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 0.0.0.0:4443->4443/tcp   nextcloudpi
    be5abebc0d7b        portainer/portainer           "/portainer --no-ana…"   7 weeks ago         Up 2 weeks          0.0.0.0:8000->8000/tcp, 0.0.0.0:9000->9000/tcp                     portainer

There is only one jellyfin docker available.

But, I’m not sure, I have downloaded (and tried to install) the Jellyfin Server for MacOS (I mixed it up with a Client software to stream my stuff). Can this cause the problems? I have a log file there but I can only post pics no files.

I created a “dockeruser” with a corresponding PUID & PGID. These should be correct (I have the same for Plex and it works). My docker-compose file is the nearly the same than yours @ChiefMedicalOfficer .

    ---
version: "2.1"
services:
  jellyfin:
    image: linuxserver/jellyfin
    container_name: jellyfin
    environment:
      - PUID=1001
      - PGID=998
      - TZ=Europe/Berlin
    volumes:
      - /srv/dev-disk-by-label-NAS/config/Jellyfin:/config
      - /srv/dev-disk-by-label-NAS/TV:/data/tvshows
      - /srv/dev-disk-by-label-NAS/Movies:/data/movies
    ports:
      - 8096:8096
    restart: unless-stopped

@anthonylavado, @ChiefMedicalOfficer: Do you have any more idea what I can do?

Have you tried setting it up with your own user PUID & PGID? (not a new dockeruser).

Just for testing purposes.

Thanks for your reply. It doesn’t matter what I insert for PUID & PGID. I tried it with another user. The server/docker is not reachable from any Browser or the iPad App.

is there any more idea available?

even a new install doesn’t help. I reinstalled a new stack/docker. Leads to the same behaviour.

I use the same user as I use for Plex, and with Plex it works. Jellyfin has the same config directory.

Maybe someone has a good manual/tutorial to reinstall it?

Why do I have the same behaviour when i completely delete the docker and install it new?

The only thing I can think of is deleting/moving the old config directory, and starting fresh that way.
I’ve just tried Docker for the first time tonight, with our own image. I got it up and running in five minutes :man_shrugging:

@anthonylavado: thanks, that was it, deleting the config and then reinstall.
Now it scans my media files.
I can test it on my Apple TV with infuse? I have installed the free version of infuse - does it work with Jellyfin or is it necessary to buy a license for infuse?
thanks a lot.

@beamformer That’s great to hear! Yeah, you can test it with Infuse, and MrMC is also an option. MrMC has a lite version that has no time limit, but will only load 8 items from your library for testing purposes.

The Infuse Pro license isn’t required, but some media may be unable to play without it. I believe you can get a seven day trial when you sign up for a subscription. I have personally had one for several years now, as it’s been well worth it’s value.

If I recall correctly, there’s more info here: https://firecore.com/infuse

yes, thank you. I will try it.
Another question, is there an MacOS App available (without compiling) to connect to the server and play the files as well as from AppleTV?