From 68d60b204c34c57d271c291ce1971b4c4a4006d5 Mon Sep 17 00:00:00 2001 From: James Turland Date: Mon, 5 Feb 2024 22:24:04 +0000 Subject: [PATCH] lxc-gpu --- LXC/Jellyfin/docker-compose.yaml | 25 +++++++++++++++ LXC/Jellyfin/readme.md | 55 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+) create mode 100644 LXC/Jellyfin/docker-compose.yaml create mode 100644 LXC/Jellyfin/readme.md diff --git a/LXC/Jellyfin/docker-compose.yaml b/LXC/Jellyfin/docker-compose.yaml new file mode 100644 index 0000000..8d5f1d9 --- /dev/null +++ b/LXC/Jellyfin/docker-compose.yaml @@ -0,0 +1,25 @@ +version: "2" +services: + jellyfin: + image: jellyfin/jellyfin + container_name: jellyfin + group_add: + - '107' # This needs to be the group id of running `stat -c '%g' /dev/dri/renderD128` on the docker host + environment: + - TZ=Europe/London + volumes: + - ./jellyfin/config:/config + - ./jellyfin/cache:/cache + - /films:/films + # - /home/ubuntu/YOUR_NAS/Films:/Films:ro + # - /home/ubuntu/YOUR_NAS/TVShows:/TVShows:ro + # - /home/ubuntu/YOUR_NAS/Audiobooks:/Audiobooks:ro + # - /home/ubuntu/YOUR_NAS/Music:/Music:ro + ports: # You will need to uncomment if you aren't running through a proxy + - 8096:8096 + - 8920:8920 #optional + - 7359:7359/udp #optional + - 1900:1900/udp #optional + devices: # uncomment these and amend if you require GPU accelerated transcoding + - /dev/dri/renderD129:/dev/dri/renderD129 + restart: unless-stopped \ No newline at end of file diff --git a/LXC/Jellyfin/readme.md b/LXC/Jellyfin/readme.md new file mode 100644 index 0000000..f92e019 --- /dev/null +++ b/LXC/Jellyfin/readme.md @@ -0,0 +1,55 @@ +# Find Device Numbers +``` +ls -l /dev/dri +``` + +# Find Group Numbers +``` +cat /etc/group +``` + +# Add Group Numbers Values to subguid +Change values to map the to above ^^ +``` +nano /etc/subguid +``` +Paste at the bottom, for example: +``` +root:44:1 +root:104:1 +``` + +# Create CT Using Wizard. Edit .conf In /etc/pve/lxc +Edit your device IDs and renderD*** +Ensure you match the idmap values +``` +arch: amd64 +cores: 2 +cpulimit: 2 +features: nesting=1 +hostname: test-gpu-04 +memory: 3000 +net0: name=eth0,bridge=vmbr0,firewall=1,hwaddr=BC:24:11:06:18:78,ip=dhcp,type=veth +ostype: debian +rootfs: local-lvm:vm-104-disk-0,size=20G +swap: 512 +unprivileged: 1 +lxc.cgroup2.devices.allow: c 226:0 rwm +lxc.cgroup2.devices.allow: c 226:129 rwm +lxc.mount.entry: /dev/dri/renderD129 dev/dri/renderD129 none bind,optional,create=file +lxc.idmap: u 0 100000 65536 +lxc.idmap: g 0 100000 44 +lxc.idmap: g 44 44 1 +lxc.idmap: g 45 100045 62 +lxc.idmap: g 107 104 1 +lxc.idmap: g 108 100108 65428 +``` + +# Add Root to Groups +Do this on your Proxmox Host +``` +usermod -aG render,video root +``` + +# Whatever You Want... +Install Docker, run apps, even change your LXC for a Linux Desktop!!! \ No newline at end of file