Currently, docker-mods are already packaged and distributed as OCI images. However, the consumption mechanism is not OCI-native: mods are pulled at runtime using curl and extracted into /modcache.
Current Limitations
The current consumption model has several limitations:
- Mods is OCI images but is not managed as the image. Therefore, the capabilities of the container runtime, such as parallel download (which significantly improves startup time), are not being fully utilized.
- Cache invalidate: Avoiding repeated downloads requires a persistent
/modcache hostPath mount.
- Cross-container cache sharing: Multiple containers need a shared
/modcache volume to avoid downloading the same mod multiple times.
Proposal
Meanwhile, modern container runtimes and orchestrators are moving toward native support for mounting OCI images directly as volumes.
So my proposal is allow docker-mods to be consumed as OCI images mounted as volumes, for example:
services:
jellyfin:
image: lscr.io/linuxserver/jellyfin:10.11.8
container_name: jellyfin
volumes:
- type: image
source: lscr.io/linuxserver/mods:jellyfin-opencl-intel
target: /modcache/jellyfin-opencl-intel
read_only: true
ports:
- 8096:8096
Benefits
- Standardized distribution: Mods become OCI artifacts, leveraging existing registry workflows (push/pull/inspect/signing).
- Improved reproducibility: Eliminates runtime download variability and cache state issues.
- Reduced host dependency: No need for shared hostPath volume between containers.
- Better lifecycle alignment: Mod versioning becomes consistent with container image versioning.
- Easier automation & CI/CD integration: Mods can be built and published like any other container artifact.
Currently, docker-mods are already packaged and distributed as OCI images. However, the consumption mechanism is not OCI-native: mods are pulled at runtime using
curland extracted into/modcache.Current Limitations
The current consumption model has several limitations:
/modcachehostPath mount./modcachevolume to avoid downloading the same mod multiple times.Proposal
Meanwhile, modern container runtimes and orchestrators are moving toward native support for mounting OCI images directly as volumes.
So my proposal is allow docker-mods to be consumed as OCI images mounted as volumes, for example:
Benefits