J0ZAH 4 Posted February 25 Share Posted February 25 Hey guys, Looking for a little help with getting my Arc A380 working inside Docker. I have verified that the a380 works with another container and I'm not sure what I'm doing wrong with Emby. My current docker-compose looks like the following services: emby: container_name: "emby" devices: - "/dev/dri/:/dev/dri/" entrypoint: - "/init" environment: - "UID=1000" - "GID=100" - "GIDLIST=100" - "TZ=America/New_York" # Everything below was system added - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" - "LANG=en_US.UTF-8" - "HOME=/tmp" - "AMDGPU_IDS=/share/libdrm/amdgpu.ids" - "FONTCONFIG_PATH=/etc/fonts" - "LD_LIBRARY_PATH=/lib:/system" - "LIBVA_DRIVERS_PATH=/lib/dri" - "OCL_ICD_VENDORS=/etc/OpenCL/vendors" - "PCI_IDS_PATH=/share/hwdata/pci.ids" - "SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt" - "NVIDIA_VISIBLE_DEVICES=all" - "NVIDIA_DRIVER_CAPABILITIES=compute,video,utility" - "XDG_CACHE_HOME=/config/cache" hostname: "9b4f9e2fa55c" image: "emby/embyserver:beta" ipc: "private" labels: maintainer: "Emby LLC <apps@emby.media>" logging: driver: "json-file" options: {} mac_address: "02:42:ac:11:00:09" network_mode: "bridge" ports: - "8096:8096/tcp" restart: "unless-stopped" volumes: - "/data:/data" - "/docker_local_vol/emby_config:/config" working_dir: "/" My host is running Ubuntu 22.04 on Kernel 6.5.0-1014-oem and when I list out the /dev/dri directory I can see the "renderD128" device Furthermore, I can see usage by using the intel-gpu-tools and running intel_gpu_top when I run a transcoding workload on Jellyfin (the other container I tested) the usage spikes, however when I'm in Emby and run a transcode I get nothing. Emby also doesn't seem to even be recognizing the GPU because when I go into the transcoding settings I get the following when selecting advanced. Any help or pointers would be appreciated. Link to comment Share on other sites More sharing options...
Luke 37099 Posted February 25 Share Posted February 25 HI, are you able to test our dedicated ubuntu package to see how that compares? Link to comment Share on other sites More sharing options...
J0ZAH 4 Posted February 25 Author Share Posted February 25 yes! What should I do to set that up? I used this Docker image emby/embyserver are you talking about another one? Link to comment Share on other sites More sharing options...
Luke 37099 Posted February 25 Share Posted February 25 You basically would install that from here: https://emby.media/linux-server.html Link to comment Share on other sites More sharing options...
J0ZAH 4 Posted February 25 Author Share Posted February 25 Got it, Im spinning up a new vm now. 1 Link to comment Share on other sites More sharing options...
J0ZAH 4 Posted February 25 Author Share Posted February 25 Looks like everything came through. Link to comment Share on other sites More sharing options...
adminExitium 173 Posted February 25 Share Posted February 25 Can you try with the minimal compose example from the emby page @ https://hub.docker.com/r/emby/embyserver because you have a lot of custom environment variables like the LD_LIBRARY_PATH, OCL_ICD_VENDORS & LIBVA_DRIVERS_PATH that may be breaking stuff? Also, see if removing the trailing slash in devices i.e. "/dev/dri:/dev/dri" makes any difference. 1 Link to comment Share on other sites More sharing options...
Solution Q-Droid 653 Posted February 25 Solution Share Posted February 25 7 hours ago, J0ZAH said: - "GIDLIST=100" Include the GIDs for video and render in this variable. If no render on your host then video. Link to comment Share on other sites More sharing options...
J0ZAH 4 Posted February 25 Author Share Posted February 25 IT WORKING (insert pod racer) 2 hours ago, adminExitium said: Can you try with the minimal compose example from the emby page @ https://hub.docker.com/r/emby/embyserver because you have a lot of custom environment variables like the LD_LIBRARY_PATH, OCL_ICD_VENDORS & LIBVA_DRIVERS_PATH that may be breaking stuff? Also, see if removing the trailing slash in devices i.e. "/dev/dri:/dev/dri" makes any difference. A lot of those variables were added by docker automatically after the container creation. All of the environment variables below were not entered into the original compose. I use portainer so I ended up exporting the current running compose for this post, sorry for the confusion. - "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" - "LANG=en_US.UTF-8" - "HOME=/tmp" - "AMDGPU_IDS=/share/libdrm/amdgpu.ids" - "FONTCONFIG_PATH=/etc/fonts" - "LD_LIBRARY_PATH=/lib:/system" - "LIBVA_DRIVERS_PATH=/lib/dri" - "OCL_ICD_VENDORS=/etc/OpenCL/vendors" - "PCI_IDS_PATH=/share/hwdata/pci.ids" - "SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt" - "NVIDIA_VISIBLE_DEVICES=all" - "NVIDIA_DRIVER_CAPABILITIES=compute,video,utility" - "XDG_CACHE_HOME=/config/cache" Once I got the GPU to show up I went back to test and the trailing / in /dev/dri/didn't seem to affect anything. best to leave it off as I have seen the general consensus is that you don't need it. 2 hours ago, Q-Droid said: Include the GIDs for video and render in this variable. If no render on your host then video. This is what did the trick I added the following after searching for the correct GIDLIST I found this post - "GIDLIST=109" There was also a GIDLIST=44 however I tested that and it was not needed. Thanks everyone for the help! 1 1 Link to comment Share on other sites More sharing options...
Q-Droid 653 Posted February 25 Share Posted February 25 That's good that it worked but those values of 109 and 44 can be different between systems. What you want to do is get the actual values for your system on the host: $ ls -l /dev/dri total 0 drwxr-xr-x 2 root root 80 Feb 24 07:54 by-path crw-rw---- 1 root video 226, 0 Feb 24 07:54 card0 crw-rw-rw- 1 root render 226, 128 Feb 24 07:54 renderD128 $ getent group video video:x:483:emby $ getent group render render:x:486:emby,tvheadend Ignore the user list after the number. Then add to GIDLIST=483,486 1 Link to comment Share on other sites More sharing options...
J0ZAH 4 Posted February 25 Author Share Posted February 25 That makes sense. This is what I'm getting Makes sense now why 109 was working, thanks. 1 Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now