mirror of
https://github.com/MacRimi/ProxMenux.git
synced 2026-11-01 10:22:08 +00:00
OCI manager Apps - "Install an image that is not in the catalog" reads an oci-compose from a file of the host or from an address. - A file written by hand states the image, its ports, variables and volumes, and what the installation asks; the rest is completed when it is read. A complete file, or the record of an installation, is installed as it is, and of a record only the template is used. - Errors name the field they are in, also on a host without python3-jsonschema. - oci/README.md describes the engine and the oci-compose block by block, with two examples in oci/examples/. - The documentation page of the option covers it, in English and Spanish. Log2RAM (reported by @f3rs3n) - The sync removes the old active journal file from the disk copy, so a boot no longer restores it and journald deletes its oldest archives first. Log2RAM optimization 1.7; it takes effect from the next reboot. Translations - The bot keeps "oci-compose" as written. - Spanish texts for the new option and for the Log2RAM notice.
235 lines
7.0 KiB
JSON
235 lines
7.0 KiB
JSON
{
|
|
"kind": "proxmenux.oci-template",
|
|
"catalog_ui": {
|
|
"title": {
|
|
"en_US": "Jellyfin Official"
|
|
},
|
|
"tagline": {
|
|
"en_US": "Official Jellyfin image with optional VA-API or NVIDIA acceleration."
|
|
},
|
|
"description": {
|
|
"en_US": "Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media."
|
|
},
|
|
"category": "media",
|
|
"icon": "https://raw.githubusercontent.com/linuxserver/docker-templates/master/linuxserver.io/img/jellyfin-icon.png",
|
|
"website": "https://jellyfin.org/",
|
|
"documentation": "https://jellyfin.org/docs/general/installation/container/",
|
|
"repository": "https://github.com/jellyfin/jellyfin-packaging"
|
|
},
|
|
"container_contract": {
|
|
"service_name": "jellyfin",
|
|
"container_name": "jellyfin",
|
|
"image": {
|
|
"reference": "jellyfin/jellyfin:latest"
|
|
},
|
|
"ports": [
|
|
{
|
|
"container_port": 8096
|
|
},
|
|
{
|
|
"container_port": 7359,
|
|
"protocol": "udp",
|
|
"required": false
|
|
}
|
|
],
|
|
"environment": [
|
|
{
|
|
"name": "JELLYFIN_PublishedServerUrl",
|
|
"required": false,
|
|
"prompt": "Optional published URL for Jellyfin"
|
|
}
|
|
],
|
|
"volumes": [
|
|
{
|
|
"container_path": "/config"
|
|
},
|
|
{
|
|
"container_path": "/cache"
|
|
},
|
|
{
|
|
"container_path": "/media",
|
|
"default": "host-bind",
|
|
"managed_volume": {
|
|
"default_size_gb": 32
|
|
}
|
|
}
|
|
],
|
|
"restart": "unless-stopped"
|
|
},
|
|
"first_run": {
|
|
"endpoints": [
|
|
{
|
|
"label": "Jellyfin WebUI",
|
|
"scheme": "http",
|
|
"port": 8096,
|
|
"path": "/",
|
|
"source": "official-container-documentation"
|
|
}
|
|
]
|
|
},
|
|
"proxmox": {
|
|
"defaults": {
|
|
"memory_mb": 2048
|
|
},
|
|
"installer_profile": {
|
|
"hardware_acceleration": {
|
|
"prompt": "Hardware acceleration for Jellyfin",
|
|
"default": "none",
|
|
"profiles": [
|
|
{
|
|
"id": "none",
|
|
"label": "No acceleration (CPU)",
|
|
"device_requests": []
|
|
},
|
|
{
|
|
"id": "vaapi",
|
|
"label": "Intel/AMD (VA-API)",
|
|
"device_requests": [
|
|
{
|
|
"id": "vaapi-render",
|
|
"kind": "character-device",
|
|
"purpose": "vaapi",
|
|
"path_prompt": "GPU render device",
|
|
"host_path_default": "/dev/dri/renderD128",
|
|
"container_path_strategy": "same-as-host",
|
|
"mode": "0660",
|
|
"deny_write": false,
|
|
"gid_strategy": "host-device-gid",
|
|
"environment": [
|
|
{
|
|
"name": "LIBVA_DRIVER_NAME",
|
|
"prompt": "VA-API driver",
|
|
"choices": [
|
|
"auto",
|
|
"radeonsi",
|
|
"iHD",
|
|
"i965"
|
|
],
|
|
"default": "auto",
|
|
"omit_values": [
|
|
"auto"
|
|
]
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"post_start_configurations": [
|
|
{
|
|
"id": "jellyfin-vaapi-hdr-tone-mapping",
|
|
"type": "jellyfin-encoding-xml",
|
|
"enable_prompt": "Enable VA-API transcoding and HDR10/Dolby Vision to SDR tone mapping",
|
|
"enabled_default": true,
|
|
"required": true,
|
|
"timeout_seconds": 120,
|
|
"candidate_paths": [
|
|
"/config/encoding.xml",
|
|
"/config/config/encoding.xml"
|
|
],
|
|
"settings": {
|
|
"HardwareAccelerationType": "vaapi",
|
|
"VaapiDevice": {
|
|
"device_path_from": "vaapi-render"
|
|
},
|
|
"EnableDecodingColorDepth10Hevc": "true",
|
|
"EnableHardwareEncoding": "true",
|
|
"EnableTonemapping": "true",
|
|
"EnableVppTonemapping": "false",
|
|
"TonemappingAlgorithm": "bt2390",
|
|
"TonemappingMode": "auto",
|
|
"TonemappingRange": "auto"
|
|
},
|
|
"lists": {
|
|
"HardwareDecodingCodecs": [
|
|
"h264",
|
|
"hevc",
|
|
"vc1"
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"id": "nvidia",
|
|
"label": "NVIDIA (NVENC/NVDEC)",
|
|
"device_requests": [
|
|
{
|
|
"id": "nvidia-runtime",
|
|
"kind": "nvidia-runtime",
|
|
"purpose": "nvidia-cuda-nvenc-nvdec",
|
|
"device_selection": "all-requested-by-compose"
|
|
}
|
|
],
|
|
"environment": [
|
|
{
|
|
"name": "NVIDIA_VISIBLE_DEVICES",
|
|
"value": "all"
|
|
}
|
|
],
|
|
"post_start_configurations": [
|
|
{
|
|
"id": "jellyfin-nvidia-hdr-tone-mapping",
|
|
"type": "jellyfin-encoding-xml",
|
|
"enable_prompt": "Enable NVIDIA transcoding and HDR10/Dolby Vision to SDR tone mapping",
|
|
"enabled_default": true,
|
|
"required": true,
|
|
"timeout_seconds": 120,
|
|
"candidate_paths": [
|
|
"/config/encoding.xml",
|
|
"/config/config/encoding.xml"
|
|
],
|
|
"settings": {
|
|
"HardwareAccelerationType": "nvenc",
|
|
"EnableDecodingColorDepth10Hevc": "true",
|
|
"EnableEnhancedNvdecDecoder": "true",
|
|
"EnableHardwareEncoding": "true",
|
|
"EnableTonemapping": "true",
|
|
"EnableVppTonemapping": "false",
|
|
"TonemappingAlgorithm": "bt2390",
|
|
"TonemappingMode": "auto",
|
|
"TonemappingRange": "auto"
|
|
},
|
|
"lists": {
|
|
"HardwareDecodingCodecs": [
|
|
"h264",
|
|
"hevc",
|
|
"vc1"
|
|
]
|
|
}
|
|
}
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"startup_healthcheck": {
|
|
"scheme": "http",
|
|
"port": 8096,
|
|
"path": "/System/Info/Public",
|
|
"timeout_seconds": 180,
|
|
"request_timeout_seconds": 10,
|
|
"stability_seconds": 4,
|
|
"verify_tls": false
|
|
},
|
|
"volume_preparations": [
|
|
{
|
|
"container_path": "/config",
|
|
"remove_lost_found": true,
|
|
"owner_strategy": "mapped-root",
|
|
"only_when_mount_type": "managed-volume"
|
|
},
|
|
{
|
|
"container_path": "/cache",
|
|
"remove_lost_found": true,
|
|
"owner_strategy": "mapped-root",
|
|
"only_when_mount_type": "managed-volume"
|
|
},
|
|
{
|
|
"container_path": "/media",
|
|
"remove_lost_found": true,
|
|
"owner_strategy": "mapped-root",
|
|
"only_when_mount_type": "managed-volume"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
}
|