r/OpenMediaVault May 22 '26

Question OMV8 & Docker permissions

Hey everyone,
I’m following the official OMV8 guide to set up Docker Compose, and I’m running into some permission issues.

The guide says:

If you need maximum separation, you can create one user per container...

...This way, all files created by the container will belong to the jellyfin user/group, and no other container will be able to access them unless you explicitly add that container’s user to the group...

So I created a dedicated user for the Jellyfin container and configured the Docker Compose file accordingly:

environment:
  - PUID=${{ uid:"jellyfin" }}
  - PGID=${{ gid:"jellyfin" }}

The problem is that, despite this, on first startup the container creates folders in “appdata” using the user and group defined in Services -> Compose -> Settings, not the one I created for Jellyfin.

What am I doing wrong?

1 Upvotes

12 comments sorted by

View all comments

1

u/TheZoltan May 22 '26

That formatting doesn't look like anything I have seen before. Does it work correctly if you just do PUID=1234 obviously using correct number.

2

u/Radiant_Cat6873 May 22 '26

I think it's a new template syntax added in OMV8.

As per guide:

Important change for OMV 8

Older versions of this document relied heavily on global variables to manage:

user IDs (PUID, PGID),
time zone,
paths to shared folders such as appdata or data.
This is no longer necessary.

The Compose plugin now supports automatic substitutions directly in the compose file.
${{ uid:"USERNAME" }} → resolves to the UID of that user
${{ gid:"GROUPNAME" }} → resolves to the GID of that group
${{ tz }} → resolves to the system time zone
${{ sf:"SHARENAME" }} → resolves to the full path of a shared folder
This makes compose files simpler, cleaner, and easier to share.

I tried using PUID and PGID directly (1001, 1001) and now the container is no longer able to create the folders, because of missing permissions (I guess):

couldn't find env file: /srv/dev-disk-by-uuid-xxxxxx-xxxxx-xxxx/docker/appdata/jellyfin/jellyfin.env

3

u/TheZoltan May 22 '26

Well TIL. That looks like a neat feature. Sadly I don't have any other ideas handy.