[GH-ISSUE #291] [LXC] Error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied #202

Closed
opened 2026-10-15 12:58:09 +00:00 by bsakaguchi · 8 comments
Owner

Originally created by @Gailoks on GitHub (Nov 16, 2025).
Original GitHub issue: https://github.com/games-on-whales/wolf/issues/291

After a long break, I decided to come back to Wolf.
A lot has changed since the last time I used it, so I was ready to jump into a new adventure.
But unexpectedly, nothing worked the way I hoped. Now I need help to get everything running again.

I’m running Wolf inside an LXC container following the official instructions. Game libraries and user home directories are stored on mergerfs.

The host system is Proxmox VE 8.4.14 with kernel 6.8.12-16-pve. I’m not yet ready to migrate to PVE 9, so I’m staying on this branch for now.

Here is my docker-composy.yml

services:
  wolfmanager:
    image: ghcr.io/games-on-whales/wolfmanager/wolfmanager:latest
    environment:
      - NODE_ENV=production
      - NEXTAUTH_URL=http://wolf.gm:3000
      - WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock
    volumes:
      - /var/run/wolf:/var/run/wolf              # Mount Wolf socket
      - /var/run/docker.sock:/var/run/docker.sock # Mount Docker socket
      - /wolf-data:/wolf-data:rw # Persist config directory
    restart: unless-stopped
    network_mode: host
    depends_on:
      - wolf
  wolf:
    image: ghcr.io/games-on-whales/wolf:wolf-ui
    cap_add:
      - NET_ADMIN
      - SYS_ADMIN
      - SYS_RESOURCE
    environment:
      - WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock
      - XDG_RUNTIME_DIR=/tmp/sockets
      - HOST_APPS_STATE_FOLDER=/wolf-data/users
      - WOLF_CFG_FILE=/wolf-data/config.toml
      - WOLF_ENCODER_NODE=/dev/dri/renderD129
      - WOLF_RENDER_NODE=/dev/dri/renderD128
      - WOLF_STOP_CONTAINER_ON_EXIT=TRUE
      - WOLF_LOG_LEVEL=DEBUG
      - WOLF_PRIVATE_KEY_FILE=/wolf-data/key.pem
      - WOLF_PRIVATE_CERT_FILE=/wolf-data/cert.pem
      - WOLF_INTERNAL_IP=172.16.20.1/24
    volumes:
      - /var/run/wolf:/var/run/wolf:rw
      - /tmp/sockets:/tmp/sockets:rw
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/:/dev/:rw
      - /mnt/udev:/run/udev:rw
      - /wolf-data:/wolf-data:rw # Persist config directory
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri
      - /dev/uinput
      - /dev/uhid
    restart: unless-stopped
    network_mode: host
    ports:
      - 47984-48200:47984-48200/udp
      - 47984-48200:47984-48200/tcp

And here goes logs

[2025-11-16 12:56:29] 
[2025-11-16 12:56:29] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
[2025-11-16 12:56:29] **** Configure default user ****
[2025-11-16 12:56:29] Container running as root. Nothing to do.
[2025-11-16 12:56:29] DONE
[2025-11-16 12:56:29] 
[2025-11-16 12:56:29] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
[2025-11-16 12:56:29] **** Configure devices ****
[2025-11-16 12:56:29] Exec device groups
[2025-11-16 12:56:30] Adding user 'root' to groups: gow-gid-102,root
[2025-11-16 12:56:30] DONE
[2025-11-16 12:56:30] 
[2025-11-16 12:56:30] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
[2025-11-16 12:56:30] 
[2025-11-16 12:56:30] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
[2025-11-16 12:56:30] Launching the container's startup script as user 'root'
12:56:30.154437507 INFO  | Gstreamer version: 1.26.7-0
0:00:00.012518796     1 0x56815506d370 WARN              cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
12:56:30.155854892 DEBUG | XDG_RUNTIME_DIR=/tmp/sockets
12:56:30.155891559 INFO  | Reading config file from: /wolf-data/users/cfg/config.toml
12:56:30.172943726 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
12:56:30.173047279 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
12:56:30.173083508 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
0:00:00.029847801     1 0x56815506d370 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vah264enc"!
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
0:00:00.121404080     1 0x56815506d370 WARN                vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter1> VPP does not support alpha blending
12:56:30.289940842 DEBUG | Checking if varenderD129h264enc is available
12:56:30.303697080 INFO  | Detected multiple VAAPI capable devices, using varenderD129h264enc encoder
12:56:30.303777930 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
12:56:30.303818475 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
0:00:00.160581171     1 0x56815506d370 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vah265enc"!
12:56:30.310936162 DEBUG | Checking if varenderD129h265enc is available
12:56:30.322901803 INFO  | Detected multiple VAAPI capable devices, using varenderD129h265enc encoder
12:56:30.322980546 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
12:56:30.323093157 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
0:00:00.179883172     1 0x56815506d370 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1enc"!
12:56:30.330144527 DEBUG | Checking if varenderD129av1enc is available
0:00:00.186932325     1 0x56815506d370 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129av1enc"!
12:56:30.330232222 INFO  | Using av1 encoder: va
12:56:30.330441771 DEBUG | Required DMA formats for vapostproc: ["NV12:0x0100000000000009", "YU12", "YV12", "YUYV:0x0100000000000009", "YU16:0x0100000000000009", "AB24:0x0100000000000002", "AR24:0x0100000000000002", "XB24:0x0100000000000002", "P010:0x0100000000000009", "AR30:0x0100000000000002", "AYUV:0x0100000000000009", "Y210:0x0100000000000009", "Y410:0x0100000000000009", "P012:0x0100000000000009", "Y212:0x0100000000000009", "Y412:0x0100000000000009"]
12:56:30.330554883 INFO  | Using zero copy pipeline on AMD (/dev/dri/renderD129)
12:56:30.330598377 WARN  | App Wolf UI render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.336520417 WARN  | App Test ball render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.336614679 WARN  | App Firefox render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.341999360 WARN  | App RetroArch render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.347611598 WARN  | App Steam render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.353179287 WARN  | App Pegasus render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.359618260 WARN  | App Lutris render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.365069838 WARN  | App Prismlauncher render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.370663822 WARN  | App Desktop (xfce) render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.375927434 WARN  | App EmulationStation render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.381321274 WARN  | App Kodi render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129)
12:56:30.387525848 DEBUG | Loading server certificates from disk: /wolf-data/users/cfg/cert.pem /wolf-data/users/cfg/key.pem
12:56:30.399072011 DEBUG | We are running as container ID 4f90da7820d3e2638d23206b26e5320e3525c67f38b0be3211c23d4f2dcbffa2
12:56:30.399119732 ERROR | Unable to find docker mount for path: /wolf-data/users
12:56:30.399138856 INFO  | Detected mounted /tmp/sockets in the host as /tmp/sockets
12:56:30.399290750 INFO  | [RTP] Starting RTP ping server on ports 48100 and 48200
12:56:30.399364330 INFO  | RTSP server started on port: 48010
12:56:30.399415823 INFO  | Control server started on port: 47999
12:56:30.399426600 INFO  | HTTP server listening on port: 47989 
12:56:30.399569262 INFO  | Starting Wolf API server on /var/run/wolf/wolf.sock
12:56:30.399605159 INFO  | Starting mDNS service
12:56:30.399893784 DEBUG | [PULSE] Connecting...
12:56:30.399979890 DEBUG | [PULSE] Context failed
12:56:30.399998892 WARN  | [PULSE] Unable to connect, Access denied
12:56:30.400126672 INFO  | Starting PulseAudio docker container
12:56:30.401541031 INFO  | HTTPS server listening on port: 47984 
12:56:30.418198596 WARN  | [DOCKER] Container WolfPulseAudio already present, removing first
12:56:30.726584104 WARN  | [DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"}

12:56:30.726652949 WARN  | Failed to connect to any PulseAudio server, audio will not be available!
12:56:54.509397731 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:54.509658505 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.510603755 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:54.510760625 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.511671023 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:54.511881527 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.532048741 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:54.532080685 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
12:56:54.532236259 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.532237299 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.533164184 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:54.533288218 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:54.548437931 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist
12:56:57.543500252 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:57.543700007 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:57.544507998 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:57.544634828 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:57.558620796 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:57.558796245 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:57.561548927 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:57.561710210 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:57.562568928 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:56:57.562751769 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:56:57.572424003 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
12:56:57.572590301 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.575116558 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:57:00.575307559 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.575958749 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:57:00.576082555 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.580871656 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:57:00.581063612 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.591185563 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:57:00.591359247 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.592205703 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
12:57:00.592342098 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:00.595666009 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
12:57:00.595831987 WARN  | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP
12:57:01.299145255 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch
12:57:01.299310153 DEBUG | Host app state folder: /wolf-data/users/15310223745673544925/Wolf UI, creating paths
12:57:01.299654972 DEBUG | [STREAM_SESSION] Create wayland compositor
12:57:01.299752147 DEBUG | [STREAM_SESSION] Create virtual audio sink
12:57:01.299879285 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD128 ! video/x-raw(memory:DMABuf), drm-format={NV12:0x0100000000000009,YU12,YV12,YUYV:0x0100000000000009,YU16:0x0100000000000009,AB24:0x0100000000000002,AR24:0x0100000000000002,XB24:0x0100000000000002,AYUV:0x0100000000000009,Y210:0x0100000000000009,Y410:0x0100000000000009,P012:0x0100000000000009,Y212:0x0100000000000009,Y412:0x0100000000000009}, width=1920, height=1080, framerate=60/1 ! 
interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1
12:57:01.303637939 DEBUG | Setting up waylanddisplaysrc
12:57:01.321363034 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.321396943 DEBUG | [RTSP] received command OPTIONS
12:57:01.333655321 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.333689308 DEBUG | [RTSP] received command DESCRIBE
12:57:01.345733094 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.345764942 DEBUG | [RTSP] received command SETUP
0:00:31.213760252     1 0x71521c01ea80 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues.
0:00:31.213776713     1 0x71521c01ea80 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
12:57:01.357221404 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1
12:57:01.357248936 INFO  | Wayland display ready, listening on: wayland-1
12:57:01.357529915 DEBUG | [STREAM_SESSION] Start runner
12:57:01.357920735 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.357943311 DEBUG | [RTSP] received command SETUP
12:57:01.358973846 DEBUG | /proc/driver/nvidia/gpus/0000:08:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia
12:57:01.369640034 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.369674016 DEBUG | [RTSP] received command SETUP
12:57:01.369879526 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation
12:57:01.369960162 DEBUG | [DOCKER] Using fake-udev, creating /wolf-data/users/15310223745673544925/Wolf UI/udev/data
12:57:01.379235991 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation
12:57:01.379434508 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13
12:57:01.379487599 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}}
12:57:01.384632842 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.384662682 DEBUG | [RTSP] received command ANNOUNCE
12:57:01.384787318 DEBUG | [RTSP] Moonlight requested video format HEVC
12:57:01.384804374 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps
Unsupported modifier, resource creation failed.
2025-11-16T12:57:01.386408Z  WARN waylanddisplaycore::utils::allocator: Failed to create buffer with modifier I915_y_tiled, trying workaround modifier
WARNING: Kernel has no file descriptor comparison support: Operation not permitted
12:57:01.396810430 DEBUG | [RTSP] found session by matching payload: 136.12.153.93
12:57:01.396851975 DEBUG | [RTSP] received command PLAY
12:57:01.401619155 DEBUG | [ENET] connected client: 172.16.10.2:22943
12:57:01.402117726 DEBUG | Starting video pipeline: 
interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream !
vapostproc add-borders=true !
video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 !
vah265lpenc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=15308 cpb-size=15308 key-int-max=1024 rate-control=cqp target-usage=6 !
h265parse !
video/x-h265, profile=main, stream-format=byte-stream !
rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 !
appsink sync=false name=wolf_udp_sink

12:57:01.403982155 DEBUG | Setting up wolf_udp_sink
12:57:01.404098836 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle
0:00:31.300419919     1 0x7151fc000de0 WARN                 basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore
12:57:01.567347545 WARN  | [DOCKER] error 500 - {"message":"invalid volume specification: '/tmp/sockets/::rw': invalid mount config for type \"bind\": field Target must not be empty"}

12:57:01.567457828 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925
12:57:01.567510473 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925
12:57:01.567647489 INFO  | [GSTREAMER] Pipeline reached End Of Stream
12:57:01.571642690 INFO  | [GSTREAMER] Pipeline reached End Of Stream
12:57:01.604429562 DEBUG | [ENET] disconnected client: 172.16.10.2:22943
Originally created by @Gailoks on GitHub (Nov 16, 2025). Original GitHub issue: https://github.com/games-on-whales/wolf/issues/291 After a long break, I decided to come back to Wolf. A lot has changed since the last time I used it, so I was ready to jump into a new adventure. But unexpectedly, nothing worked the way I hoped. Now I need help to get everything running again. I’m running Wolf inside an LXC container following the official instructions. Game libraries and user home directories are stored on mergerfs. The host system is Proxmox VE 8.4.14 with kernel 6.8.12-16-pve. I’m not yet ready to migrate to PVE 9, so I’m staying on this branch for now. Here is my docker-composy.yml ```yml services: wolfmanager: image: ghcr.io/games-on-whales/wolfmanager/wolfmanager:latest environment: - NODE_ENV=production - NEXTAUTH_URL=http://wolf.gm:3000 - WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock volumes: - /var/run/wolf:/var/run/wolf # Mount Wolf socket - /var/run/docker.sock:/var/run/docker.sock # Mount Docker socket - /wolf-data:/wolf-data:rw # Persist config directory restart: unless-stopped network_mode: host depends_on: - wolf wolf: image: ghcr.io/games-on-whales/wolf:wolf-ui cap_add: - NET_ADMIN - SYS_ADMIN - SYS_RESOURCE environment: - WOLF_SOCKET_PATH=/var/run/wolf/wolf.sock - XDG_RUNTIME_DIR=/tmp/sockets - HOST_APPS_STATE_FOLDER=/wolf-data/users - WOLF_CFG_FILE=/wolf-data/config.toml - WOLF_ENCODER_NODE=/dev/dri/renderD129 - WOLF_RENDER_NODE=/dev/dri/renderD128 - WOLF_STOP_CONTAINER_ON_EXIT=TRUE - WOLF_LOG_LEVEL=DEBUG - WOLF_PRIVATE_KEY_FILE=/wolf-data/key.pem - WOLF_PRIVATE_CERT_FILE=/wolf-data/cert.pem - WOLF_INTERNAL_IP=172.16.20.1/24 volumes: - /var/run/wolf:/var/run/wolf:rw - /tmp/sockets:/tmp/sockets:rw - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/:/dev/:rw - /mnt/udev:/run/udev:rw - /wolf-data:/wolf-data:rw # Persist config directory device_cgroup_rules: - 'c 13:* rmw' devices: - /dev/dri - /dev/uinput - /dev/uhid restart: unless-stopped network_mode: host ports: - 47984-48200:47984-48200/udp - 47984-48200:47984-48200/tcp ``` And here goes logs ``` [2025-11-16 12:56:29] [2025-11-16 12:56:29] [ /etc/cont-init.d/10-setup_user.sh: executing... ] [2025-11-16 12:56:29] **** Configure default user **** [2025-11-16 12:56:29] Container running as root. Nothing to do. [2025-11-16 12:56:29] DONE [2025-11-16 12:56:29] [2025-11-16 12:56:29] [ /etc/cont-init.d/15-setup_devices.sh: executing... ] [2025-11-16 12:56:29] **** Configure devices **** [2025-11-16 12:56:29] Exec device groups [2025-11-16 12:56:30] Adding user 'root' to groups: gow-gid-102,root [2025-11-16 12:56:30] DONE [2025-11-16 12:56:30] [2025-11-16 12:56:30] [ /etc/cont-init.d/30-nvidia.sh: executing... ] [2025-11-16 12:56:30] [2025-11-16 12:56:30] [ /etc/cont-init.d/init-gamescope.sh: executing... ] [2025-11-16 12:56:30] Launching the container's startup script as user 'root' 12:56:30.154437507 INFO | Gstreamer version: 1.26.7-0 0:00:00.012518796 1 0x56815506d370 WARN cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 12:56:30.155854892 DEBUG | XDG_RUNTIME_DIR=/tmp/sockets 12:56:30.155891559 INFO | Reading config file from: /wolf-data/users/cfg/config.toml 12:56:30.172943726 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 12:56:30.173047279 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 12:56:30.173083508 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 0:00:00.029847801 1 0x56815506d370 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vah264enc"! amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description. If they do, bad things may happen! 0:00:00.121404080 1 0x56815506d370 WARN vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter1> VPP does not support alpha blending 12:56:30.289940842 DEBUG | Checking if varenderD129h264enc is available 12:56:30.303697080 INFO | Detected multiple VAAPI capable devices, using varenderD129h264enc encoder 12:56:30.303777930 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 12:56:30.303818475 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 0:00:00.160581171 1 0x56815506d370 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vah265enc"! 12:56:30.310936162 DEBUG | Checking if varenderD129h265enc is available 12:56:30.322901803 INFO | Detected multiple VAAPI capable devices, using varenderD129h265enc encoder 12:56:30.322980546 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 12:56:30.323093157 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 0:00:00.179883172 1 0x56815506d370 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1enc"! 12:56:30.330144527 DEBUG | Checking if varenderD129av1enc is available 0:00:00.186932325 1 0x56815506d370 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129av1enc"! 12:56:30.330232222 INFO | Using av1 encoder: va 12:56:30.330441771 DEBUG | Required DMA formats for vapostproc: ["NV12:0x0100000000000009", "YU12", "YV12", "YUYV:0x0100000000000009", "YU16:0x0100000000000009", "AB24:0x0100000000000002", "AR24:0x0100000000000002", "XB24:0x0100000000000002", "P010:0x0100000000000009", "AR30:0x0100000000000002", "AYUV:0x0100000000000009", "Y210:0x0100000000000009", "Y410:0x0100000000000009", "P012:0x0100000000000009", "Y212:0x0100000000000009", "Y412:0x0100000000000009"] 12:56:30.330554883 INFO | Using zero copy pipeline on AMD (/dev/dri/renderD129) 12:56:30.330598377 WARN | App Wolf UI render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.336520417 WARN | App Test ball render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.336614679 WARN | App Firefox render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.341999360 WARN | App RetroArch render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.347611598 WARN | App Steam render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.353179287 WARN | App Pegasus render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.359618260 WARN | App Lutris render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.365069838 WARN | App Prismlauncher render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.370663822 WARN | App Desktop (xfce) render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.375927434 WARN | App EmulationStation render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.381321274 WARN | App Kodi render node (/dev/dri/renderD128) doesn't match the default GPU (/dev/dri/renderD129) 12:56:30.387525848 DEBUG | Loading server certificates from disk: /wolf-data/users/cfg/cert.pem /wolf-data/users/cfg/key.pem 12:56:30.399072011 DEBUG | We are running as container ID 4f90da7820d3e2638d23206b26e5320e3525c67f38b0be3211c23d4f2dcbffa2 12:56:30.399119732 ERROR | Unable to find docker mount for path: /wolf-data/users 12:56:30.399138856 INFO | Detected mounted /tmp/sockets in the host as /tmp/sockets 12:56:30.399290750 INFO | [RTP] Starting RTP ping server on ports 48100 and 48200 12:56:30.399364330 INFO | RTSP server started on port: 48010 12:56:30.399415823 INFO | Control server started on port: 47999 12:56:30.399426600 INFO | HTTP server listening on port: 47989 12:56:30.399569262 INFO | Starting Wolf API server on /var/run/wolf/wolf.sock 12:56:30.399605159 INFO | Starting mDNS service 12:56:30.399893784 DEBUG | [PULSE] Connecting... 12:56:30.399979890 DEBUG | [PULSE] Context failed 12:56:30.399998892 WARN | [PULSE] Unable to connect, Access denied 12:56:30.400126672 INFO | Starting PulseAudio docker container 12:56:30.401541031 INFO | HTTPS server listening on port: 47984 12:56:30.418198596 WARN | [DOCKER] Container WolfPulseAudio already present, removing first 12:56:30.726584104 WARN | [DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"} 12:56:30.726652949 WARN | Failed to connect to any PulseAudio server, audio will not be available! 12:56:54.509397731 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:54.509658505 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.510603755 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:54.510760625 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.511671023 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:54.511881527 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.532048741 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:54.532080685 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 12:56:54.532236259 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.532237299 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.533164184 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:54.533288218 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:54.548437931 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist 12:56:57.543500252 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:57.543700007 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:57.544507998 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:57.544634828 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:57.558620796 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:57.558796245 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:57.561548927 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:57.561710210 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:57.562568928 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:56:57.562751769 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:56:57.572424003 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 12:56:57.572590301 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.575116558 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:57:00.575307559 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.575958749 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:57:00.576082555 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.580871656 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:57:00.581063612 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.591185563 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:57:00.591359247 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.592205703 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 12:57:00.592342098 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:00.595666009 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 12:57:00.595831987 WARN | Unable to get mac address of ip address: 172.16.20.1/24, you can override this by settings the env variables WOLF_INTERNAL_MAC or WOLF_INTERNAL_IP 12:57:01.299145255 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch 12:57:01.299310153 DEBUG | Host app state folder: /wolf-data/users/15310223745673544925/Wolf UI, creating paths 12:57:01.299654972 DEBUG | [STREAM_SESSION] Create wayland compositor 12:57:01.299752147 DEBUG | [STREAM_SESSION] Create virtual audio sink 12:57:01.299879285 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD128 ! video/x-raw(memory:DMABuf), drm-format={NV12:0x0100000000000009,YU12,YV12,YUYV:0x0100000000000009,YU16:0x0100000000000009,AB24:0x0100000000000002,AR24:0x0100000000000002,XB24:0x0100000000000002,AYUV:0x0100000000000009,Y210:0x0100000000000009,Y410:0x0100000000000009,P012:0x0100000000000009,Y212:0x0100000000000009,Y412:0x0100000000000009}, width=1920, height=1080, framerate=60/1 ! interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1 12:57:01.303637939 DEBUG | Setting up waylanddisplaysrc 12:57:01.321363034 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.321396943 DEBUG | [RTSP] received command OPTIONS 12:57:01.333655321 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.333689308 DEBUG | [RTSP] received command DESCRIBE 12:57:01.345733094 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.345764942 DEBUG | [RTSP] received command SETUP 0:00:31.213760252 1 0x71521c01ea80 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues. 0:00:31.213776713 1 0x71521c01ea80 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 12:57:01.357221404 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1 12:57:01.357248936 INFO | Wayland display ready, listening on: wayland-1 12:57:01.357529915 DEBUG | [STREAM_SESSION] Start runner 12:57:01.357920735 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.357943311 DEBUG | [RTSP] received command SETUP 12:57:01.358973846 DEBUG | /proc/driver/nvidia/gpus/0000:08:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia 12:57:01.369640034 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.369674016 DEBUG | [RTSP] received command SETUP 12:57:01.369879526 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation 12:57:01.369960162 DEBUG | [DOCKER] Using fake-udev, creating /wolf-data/users/15310223745673544925/Wolf UI/udev/data 12:57:01.379235991 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation 12:57:01.379434508 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13 12:57:01.379487599 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}} 12:57:01.384632842 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.384662682 DEBUG | [RTSP] received command ANNOUNCE 12:57:01.384787318 DEBUG | [RTSP] Moonlight requested video format HEVC 12:57:01.384804374 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps Unsupported modifier, resource creation failed. 2025-11-16T12:57:01.386408Z WARN waylanddisplaycore::utils::allocator: Failed to create buffer with modifier I915_y_tiled, trying workaround modifier WARNING: Kernel has no file descriptor comparison support: Operation not permitted 12:57:01.396810430 DEBUG | [RTSP] found session by matching payload: 136.12.153.93 12:57:01.396851975 DEBUG | [RTSP] received command PLAY 12:57:01.401619155 DEBUG | [ENET] connected client: 172.16.10.2:22943 12:57:01.402117726 DEBUG | Starting video pipeline: interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream ! vapostproc add-borders=true ! video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 ! vah265lpenc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=15308 cpb-size=15308 key-int-max=1024 rate-control=cqp target-usage=6 ! h265parse ! video/x-h265, profile=main, stream-format=byte-stream ! rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 ! appsink sync=false name=wolf_udp_sink 12:57:01.403982155 DEBUG | Setting up wolf_udp_sink 12:57:01.404098836 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle 0:00:31.300419919 1 0x7151fc000de0 WARN basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore 12:57:01.567347545 WARN | [DOCKER] error 500 - {"message":"invalid volume specification: '/tmp/sockets/::rw': invalid mount config for type \"bind\": field Target must not be empty"} 12:57:01.567457828 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925 12:57:01.567510473 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925 12:57:01.567647489 INFO | [GSTREAMER] Pipeline reached End Of Stream 12:57:01.571642690 INFO | [GSTREAMER] Pipeline reached End Of Stream 12:57:01.604429562 DEBUG | [ENET] disconnected client: 172.16.10.2:22943 ```
Author
Owner

@ABeltramo commented on GitHub (Nov 16, 2025):

You have a bunch of legacy and wrong variables and mount points; let's reset a bit and start back with the recomended options 😉

Does the following works for you?

services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:wolf-ui
    environment:
      - WOLF_LOG_LEVEL=DEBUG
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/:/dev/:rw
      - /run/udev:/run/udev:rw
      - /wolf-data:/etc/wolf:rw # Persist config directory
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri
      - /dev/uinput
      - /dev/uhid
    restart: unless-stopped
    network_mode: host

And please reset the config.toml to the default file. Once you've got something that works we can start adding custom options if needed.

<!-- gh-comment-id:3538742358 --> @ABeltramo commented on GitHub (Nov 16, 2025): You have a bunch of legacy and wrong variables and mount points; let's reset a bit and start back with the recomended options 😉 Does the following works for you? ```yaml services: wolf: image: ghcr.io/games-on-whales/wolf:wolf-ui environment: - WOLF_LOG_LEVEL=DEBUG volumes: - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/:/dev/:rw - /run/udev:/run/udev:rw - /wolf-data:/etc/wolf:rw # Persist config directory device_cgroup_rules: - 'c 13:* rmw' devices: - /dev/dri - /dev/uinput - /dev/uhid restart: unless-stopped network_mode: host ``` And please reset the `config.toml` to the [default file](https://github.com/games-on-whales/wolf/blob/wolf-ui/src/moonlight-server/state/default/config.v6.toml). Once you've got something that works we can start adding custom options if needed.
Author
Owner

@Gailoks commented on GitHub (Nov 16, 2025):

I used minimal amount of configuration options as you recommended
and got no success, also, config is default.

docker-compose.yml:

services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:wolf-ui
    environment:
      - WOLF_LOG_LEVEL=DEBUG
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/:/dev/:rw
      - /mnt/udev:/run/udev:rw
      - /wolf-data:/etc/wolf:rw # Persist config directory
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri
      - /dev/uinput
      - /dev/uhid
    restart: unless-stopped
    network_mode: host

Logs:

13:28:10.567219342 INFO  | Succesfully paired 172.16.10.2
13:28:11.717286957 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:11.731711060 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:28:11.749109750 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist
13:28:12.913744018 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset
13:28:13.155240981 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset
13:28:13.242052557 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset
13:28:14.760464817 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:14.774824784 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:28:16.500054570 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch
13:28:16.500205519 DEBUG | Host app state folder: /etc/wolf/15310223745673544925/Wolf UI, creating paths
13:28:16.500934642 DEBUG | [STREAM_SESSION] Create wayland compositor
13:28:16.501002963 DEBUG | [STREAM_SESSION] Create virtual audio sink
13:28:16.501048212 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD128 ! video/x-raw(memory:DMABuf), drm-format={NV12:0x0100000000000009,YU12,YV12,YUYV:0x0100000000000009,YU16:0x0100000000000009,AB24:0x0100000000000002,AR24:0x0100000000000002,XB24:0x0100000000000002,AYUV:0x0100000000000009,Y210:0x0100000000000009,Y410:0x0100000000000009,P012:0x0100000000000009,Y212:0x0100000000000009,Y412:0x0100000000000009}, width=1920, height=1080, framerate=60/1 ! 
interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1
13:28:16.504823890 DEBUG | Setting up waylanddisplaysrc
13:28:16.523337721 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.523369640 DEBUG | [RTSP] received command OPTIONS
13:28:16.536385041 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.536416161 DEBUG | [RTSP] received command DESCRIBE
13:28:16.549561589 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.549593027 DEBUG | [RTSP] received command SETUP
13:28:16.560754864 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.560784662 DEBUG | [RTSP] received command SETUP
13:28:16.571939590 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.571969624 DEBUG | [RTSP] received command SETUP
13:28:16.585305845 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.585336717 DEBUG | [RTSP] received command ANNOUNCE
13:28:16.585461453 DEBUG | [RTSP] Moonlight requested video format HEVC
13:28:16.585476973 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps
13:28:16.596799745 DEBUG | [RTSP] found session by matching payload: 4.206.243.91
13:28:16.596839804 DEBUG | [RTSP] received command PLAY
13:28:16.600896717 DEBUG | [ENET] connected client: 172.16.10.2:43228
13:28:16.601522746 DEBUG | Starting video pipeline: 
interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream !
vapostproc add-borders=true !
video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 !
qsvh265enc b-frames=0 gop-size=0 idr-interval=1 ref-frames=1 bitrate=15308 rate-control=cbr low-latency=1 target-usage=6 !
h265parse !
video/x-h265, profile=main, stream-format=byte-stream !
rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 !
appsink sync=false name=wolf_udp_sink

13:28:16.603166568 WARN  | Received MOUSE_MOVE_REL_PACKET but no mouse device is present
13:28:16.603262235 DEBUG | Setting up wolf_udp_sink
13:28:16.604253787 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle
13:28:16.613425069 WARN  | Received MOUSE_MOVE_REL_PACKET but no mouse device is present
0:08:05.857570201     1 0x7e1d4c0221a0 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues.
0:08:05.857584453     1 0x7e1d4c0221a0 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
0:08:05.857736470     1 0x7e1d28000de0 WARN              qsvencoder gstqsvencoder.cpp:1636:gst_qsv_encoder_propose_allocation:<qsvh265enc1> null caps in query
13:28:16.616722480 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1
13:28:16.616742937 INFO  | Wayland display ready, listening on: wayland-1
13:28:16.617025338 DEBUG | [STREAM_SESSION] Start runner
13:28:16.618157961 DEBUG | /proc/driver/nvidia/gpus/0000:08:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia
13:28:16.628379975 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation
13:28:16.628467559 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/15310223745673544925/Wolf UI/udev/data
0:08:05.876787400     1 0x7e1d28000b70 WARN                  vapool gstvapool.c:250:gst_va_pool_set_config:<vapool0> failed getting geometry from caps video/x-raw(memory:DMABuf), format=(string)DMA_DRM, width=(int)1920, height=(int)1080, framerate=(fraction)60/1, drm-format=(string)AR24:0x0100000000000002, pixel-aspect-ratio=(fraction)1/2147483647
0:08:05.876808120     1 0x7e1d28000b70 ERROR             qsvencoder gstqsvencoder.cpp:1661:gst_qsv_encoder_propose_allocation:<qsvh265enc1> Failed to create va pool
0:08:05.877009820     1 0x7e1d28000de0 WARN              vapostproc gstvavpp.c:543:gst_va_vpp_set_info:<vapostproc3> Can't calculate borders
0:08:05.877453433     1 0x7e1d28000de0 WARN              qsvencoder gstqsvencoder.cpp:1115:gst_qsv_encoder_init_encode_session:<qsvh265enc1> MFXVideoENCODE::Query returned warning 5 (MFX_WRN_INCOMPATIBLE_VIDEO_PARAM)
13:28:16.638308725 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation
13:28:16.638508203 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13
13:28:16.638559517 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}}
Unsupported modifier, resource creation failed.
2025-11-16T13:28:16.646058Z  WARN waylanddisplaycore::utils::allocator: Failed to create buffer with modifier I915_y_tiled, trying workaround modifier
WARNING: Kernel has no file descriptor comparison support: Operation not permitted
0:08:05.904900639     1 0x7e1d28000de0 WARN                 basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore
13:28:16.778481527 WARN  | [DOCKER] error 500 - {"message":"invalid volume specification: '/var/lib/docker/volumes/f37ba0ec801ce0909ce4af51c19ca1d482e9a4ee7403144d8792d88ea6edf4fe/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty"}

13:28:16.778589699 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925
13:28:16.778635924 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925
13:28:16.778948227 INFO  | [GSTREAMER] Pipeline reached End Of Stream
13:28:16.780519725 INFO  | [GSTREAMER] Pipeline reached End Of Stream
13:28:16.803732576 DEBUG | [ENET] disconnected client: 172.16.10.2:43228
13:28:17.015742696 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:17.036186285 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:28:17.052752769 DEBUG | Starting audio pipeline: 
interpipesrc name=interpipesrc_15310223745673544925_audio listen-to=15310223745673544925_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false !
queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert !
opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 !
rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="54e5d6e04f666ce5d11384ac3779cee9" aes_iv="-444536005" !
appsink name=wolf_udp_sink
13:28:17.052821843 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist
13:28:17.054805983 DEBUG | Setting up wolf_udp_sink
13:28:20.067087355 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:20.097443213 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:28:23.119158086 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:23.141553641 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:28:26.156421152 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:28:26.175543735 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
<!-- gh-comment-id:3538760148 --> @Gailoks commented on GitHub (Nov 16, 2025): I used minimal amount of configuration options as you recommended and got no success, also, config is default. docker-compose.yml: ``` services: wolf: image: ghcr.io/games-on-whales/wolf:wolf-ui environment: - WOLF_LOG_LEVEL=DEBUG volumes: - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/:/dev/:rw - /mnt/udev:/run/udev:rw - /wolf-data:/etc/wolf:rw # Persist config directory device_cgroup_rules: - 'c 13:* rmw' devices: - /dev/dri - /dev/uinput - /dev/uhid restart: unless-stopped network_mode: host ``` Logs: ``` 13:28:10.567219342 INFO | Succesfully paired 172.16.10.2 13:28:11.717286957 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:11.731711060 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:28:11.749109750 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist 13:28:12.913744018 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset 13:28:13.155240981 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset 13:28:13.242052557 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/appasset 13:28:14.760464817 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:14.774824784 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:28:16.500054570 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch 13:28:16.500205519 DEBUG | Host app state folder: /etc/wolf/15310223745673544925/Wolf UI, creating paths 13:28:16.500934642 DEBUG | [STREAM_SESSION] Create wayland compositor 13:28:16.501002963 DEBUG | [STREAM_SESSION] Create virtual audio sink 13:28:16.501048212 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD128 ! video/x-raw(memory:DMABuf), drm-format={NV12:0x0100000000000009,YU12,YV12,YUYV:0x0100000000000009,YU16:0x0100000000000009,AB24:0x0100000000000002,AR24:0x0100000000000002,XB24:0x0100000000000002,AYUV:0x0100000000000009,Y210:0x0100000000000009,Y410:0x0100000000000009,P012:0x0100000000000009,Y212:0x0100000000000009,Y412:0x0100000000000009}, width=1920, height=1080, framerate=60/1 ! interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1 13:28:16.504823890 DEBUG | Setting up waylanddisplaysrc 13:28:16.523337721 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.523369640 DEBUG | [RTSP] received command OPTIONS 13:28:16.536385041 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.536416161 DEBUG | [RTSP] received command DESCRIBE 13:28:16.549561589 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.549593027 DEBUG | [RTSP] received command SETUP 13:28:16.560754864 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.560784662 DEBUG | [RTSP] received command SETUP 13:28:16.571939590 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.571969624 DEBUG | [RTSP] received command SETUP 13:28:16.585305845 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.585336717 DEBUG | [RTSP] received command ANNOUNCE 13:28:16.585461453 DEBUG | [RTSP] Moonlight requested video format HEVC 13:28:16.585476973 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps 13:28:16.596799745 DEBUG | [RTSP] found session by matching payload: 4.206.243.91 13:28:16.596839804 DEBUG | [RTSP] received command PLAY 13:28:16.600896717 DEBUG | [ENET] connected client: 172.16.10.2:43228 13:28:16.601522746 DEBUG | Starting video pipeline: interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream ! vapostproc add-borders=true ! video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 ! qsvh265enc b-frames=0 gop-size=0 idr-interval=1 ref-frames=1 bitrate=15308 rate-control=cbr low-latency=1 target-usage=6 ! h265parse ! video/x-h265, profile=main, stream-format=byte-stream ! rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 ! appsink sync=false name=wolf_udp_sink 13:28:16.603166568 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present 13:28:16.603262235 DEBUG | Setting up wolf_udp_sink 13:28:16.604253787 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle 13:28:16.613425069 WARN | Received MOUSE_MOVE_REL_PACKET but no mouse device is present 0:08:05.857570201 1 0x7e1d4c0221a0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues. 0:08:05.857584453 1 0x7e1d4c0221a0 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 0:08:05.857736470 1 0x7e1d28000de0 WARN qsvencoder gstqsvencoder.cpp:1636:gst_qsv_encoder_propose_allocation:<qsvh265enc1> null caps in query 13:28:16.616722480 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1 13:28:16.616742937 INFO | Wayland display ready, listening on: wayland-1 13:28:16.617025338 DEBUG | [STREAM_SESSION] Start runner 13:28:16.618157961 DEBUG | /proc/driver/nvidia/gpus/0000:08:00.0/information doesn't exists, this might be normal if the GPU is not Nvidia 13:28:16.628379975 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation 13:28:16.628467559 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/15310223745673544925/Wolf UI/udev/data 0:08:05.876787400 1 0x7e1d28000b70 WARN vapool gstvapool.c:250:gst_va_pool_set_config:<vapool0> failed getting geometry from caps video/x-raw(memory:DMABuf), format=(string)DMA_DRM, width=(int)1920, height=(int)1080, framerate=(fraction)60/1, drm-format=(string)AR24:0x0100000000000002, pixel-aspect-ratio=(fraction)1/2147483647 0:08:05.876808120 1 0x7e1d28000b70 ERROR qsvencoder gstqsvencoder.cpp:1661:gst_qsv_encoder_propose_allocation:<qsvh265enc1> Failed to create va pool 0:08:05.877009820 1 0x7e1d28000de0 WARN vapostproc gstvavpp.c:543:gst_va_vpp_set_info:<vapostproc3> Can't calculate borders 0:08:05.877453433 1 0x7e1d28000de0 WARN qsvencoder gstqsvencoder.cpp:1115:gst_qsv_encoder_init_encode_session:<qsvh265enc1> MFXVideoENCODE::Query returned warning 5 (MFX_WRN_INCOMPATIBLE_VIDEO_PARAM) 13:28:16.638308725 DEBUG | /dev/dri/renderD128 vendor: Intel Corporation 13:28:16.638508203 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13 13:28:16.638559517 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}} Unsupported modifier, resource creation failed. 2025-11-16T13:28:16.646058Z WARN waylanddisplaycore::utils::allocator: Failed to create buffer with modifier I915_y_tiled, trying workaround modifier WARNING: Kernel has no file descriptor comparison support: Operation not permitted 0:08:05.904900639 1 0x7e1d28000de0 WARN basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore 13:28:16.778481527 WARN | [DOCKER] error 500 - {"message":"invalid volume specification: '/var/lib/docker/volumes/f37ba0ec801ce0909ce4af51c19ca1d482e9a4ee7403144d8792d88ea6edf4fe/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty"} 13:28:16.778589699 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925 13:28:16.778635924 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925 13:28:16.778948227 INFO | [GSTREAMER] Pipeline reached End Of Stream 13:28:16.780519725 INFO | [GSTREAMER] Pipeline reached End Of Stream 13:28:16.803732576 DEBUG | [ENET] disconnected client: 172.16.10.2:43228 13:28:17.015742696 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:17.036186285 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:28:17.052752769 DEBUG | Starting audio pipeline: interpipesrc name=interpipesrc_15310223745673544925_audio listen-to=15310223745673544925_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false ! queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert ! opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 ! rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="54e5d6e04f666ce5d11384ac3779cee9" aes_iv="-444536005" ! appsink name=wolf_udp_sink 13:28:17.052821843 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist 13:28:17.054805983 DEBUG | Setting up wolf_udp_sink 13:28:20.067087355 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:20.097443213 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:28:23.119158086 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:23.141553641 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:28:26.156421152 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:28:26.175543735 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo ```
Author
Owner

@ABeltramo commented on GitHub (Nov 16, 2025):

The main issue seems to be:

invalid volume specification: '/var/lib/docker/volumes/f37ba0ec801ce0909ce4af51c19ca1d482e9a4ee7403144d8792d88ea6edf4fe/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty

Which seems to be an issue with mounting the XDG_RUNTIME_DIR, can you post the full logs from the beginning instead of just parts of it? There's probably a warning up before what you posted here.

You have also a whole bunch of other issues related to your iGPU. It seems that your Intel iGPU might be too old for our stack, which CPU do you have? You could try using the second GPU with something like:

services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:wolf-ui
    environment:
      - WOLF_LOG_LEVEL=DEBUG
      - WOLF_RENDER_NODE=/dev/dri/renderD129
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/input:/dev/input:rw
      - /mnt/udev:/run/udev:rw
      - /wolf-data:/etc/wolf:rw # Persist config directory
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri/renderD129
      - /dev/uinput
      - /dev/uhid
    restart: unless-stopped
    network_mode: host

but that might need some further adjustment (NEEDS TESTING)

<!-- gh-comment-id:3538768109 --> @ABeltramo commented on GitHub (Nov 16, 2025): The main issue seems to be: ``` invalid volume specification: '/var/lib/docker/volumes/f37ba0ec801ce0909ce4af51c19ca1d482e9a4ee7403144d8792d88ea6edf4fe/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty ``` Which seems to be an issue with mounting the `XDG_RUNTIME_DIR`, can you post the full logs from the beginning instead of just parts of it? There's probably a warning up before what you posted here. You have also a whole bunch of other issues related to your iGPU. It seems that your Intel iGPU might be too old for our stack, which CPU do you have? You could try using the second GPU with something like: ```yaml services: wolf: image: ghcr.io/games-on-whales/wolf:wolf-ui environment: - WOLF_LOG_LEVEL=DEBUG - WOLF_RENDER_NODE=/dev/dri/renderD129 volumes: - /var/run/docker.sock:/var/run/docker.sock:rw - /dev/input:/dev/input:rw - /mnt/udev:/run/udev:rw - /wolf-data:/etc/wolf:rw # Persist config directory device_cgroup_rules: - 'c 13:* rmw' devices: - /dev/dri/renderD129 - /dev/uinput - /dev/uhid restart: unless-stopped network_mode: host ``` but that might need some further adjustment (**NEEDS TESTING**)
Author
Owner

@ABeltramo commented on GitHub (Nov 16, 2025):

Also, it might be worth to share your LXC .conf file since there might be something wrong there too..

<!-- gh-comment-id:3538771403 --> @ABeltramo commented on GitHub (Nov 16, 2025): Also, it might be worth to share your LXC `.conf` file since there might be something wrong there too..
Author
Owner

@Gailoks commented on GitHub (Nov 16, 2025):

Here is my hardware:
Xeon e5 2680v4
64Gb ecc ddr4
gpu1: Intel arc a380 (It worked fine previously)
gpu2: AMD Rx 6800

LXC config

arch: amd64
cores: 14
dev0: /dev/uinput
dev1: /dev/uhid
features: nesting=1
hostname: Wolf
memory: 32768
mp0: /mnt/storage/wolf,mp=/wolf-data
mp1: /mnt/storage/games,mp=/games
net0: name=eth0,bridge=vmbr,hwaddr=BC:24:11:17:DC:40,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: vm-new:vm-112-disk-0,size=24G
swap: 0
tags: docker;gpu;open_port;privileged
lxc.cgroup2.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 188:* rwm
lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/serial/by-id  dev/serial/by-id  none bind,optional,create=dir
lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir
lxc.mount.entry: /dev/input dev/input none bind,optional,create=dir
lxc.mount.entry: /run/udev mnt/udev none bind,optional,create=dir

Full logs with your latest changes:

[2025-11-16 13:46:30] 
[2025-11-16 13:46:30] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
[2025-11-16 13:46:30] **** Configure default user ****
[2025-11-16 13:46:30] Container running as root. Nothing to do.
[2025-11-16 13:46:30] DONE
[2025-11-16 13:46:30] 
[2025-11-16 13:46:30] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
[2025-11-16 13:46:30] **** Configure devices ****
[2025-11-16 13:46:30] Exec device groups
[2025-11-16 13:46:30] Adding user 'root' to groups: gow-gid-102,root
[2025-11-16 13:46:30] DONE
[2025-11-16 13:46:30] 
[2025-11-16 13:46:30] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
[2025-11-16 13:46:30] 
[2025-11-16 13:46:30] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
[2025-11-16 13:46:30] Launching the container's startup script as user 'root'
0:00:00.011969620   154 0x597b16615300 WARN               vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: No such file or directory
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
0:00:00.104394560   154 0x597b16615300 WARN                vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending
0:00:00.220995227   154 0x597b16615300 WARN             msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open
0:00:00.222426840   154 0x597b16615300 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a48c20> Could not set value on item: format-version
0:00:00.222455994   154 0x597b16615300 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a48cb0> Could not set value on item: format-version
0:00:00.222472724   154 0x597b16615300 WARN                 default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a33f30> Could not set value on item: format-version
0:00:00.222907683   154 0x597b16615300 WARN               structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype
0:00:00.279050838   154 0x597b16615300 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:00.301551127   154 0x597b16615300 WARN              cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
0:00:00.345437979   154 0x597b16615300 WARN              vaapiblend gstvaapiblend.c:184:gst_vaapi_blend_initialize:<vaapiblend0> VPP does not support global alpha blending
0:00:00.381008794   154 0x597b16615300 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:00.384887757     1 0x58ba0c8a87c0 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
0:00:00.386613584   154 0x597b16615300 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
0:00:00.392232202   154 0x597b16615300 WARN      GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise
0:00:00.398670554     1 0x58ba0c8a87c0 WARN            GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so)
13:46:30.953641517 INFO  | Gstreamer version: 1.26.7-0
0:00:00.420105314     1 0x58ba0c8a87c0 WARN              cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
13:46:30.955029515 DEBUG | XDG_RUNTIME_DIR=/run/user/wolf
13:46:30.955056582 INFO  | Reading config file from: /etc/wolf/cfg/config.toml
13:46:30.969115184 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
13:46:30.969216512 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
13:46:30.969251599 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
0:00:00.443265805     1 0x58ba0c8a87c0 WARN               vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: No such file or directory
amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
If they do, bad things may happen!
0:00:00.497306915     1 0x58ba0c8a87c0 WARN                vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending
13:46:31.060610796 DEBUG | Checking if varenderD129h264enc is available
0:00:00.525801800     1 0x58ba0c8a87c0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h264enc"!
13:46:31.060714372 INFO  | Using h264 encoder: va
13:46:31.060755318 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
13:46:31.060787728 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
13:46:31.071495201 DEBUG | Checking if varenderD129h265enc is available
0:00:00.536682619     1 0x58ba0c8a87c0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h265enc"!
13:46:31.071593759 INFO  | Using h265 encoder: va
13:46:31.071634878 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1)
13:46:31.071667467 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1)
0:00:00.536811041     1 0x58ba0c8a87c0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1enc"!
0:00:00.536838515     1 0x58ba0c8a87c0 WARN     GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1lpenc"!
13:46:31.072496062 INFO  | Using av1 encoder: aom
13:46:31.072516972 WARN  | Software av1 encoder detected
13:46:31.072609809 DEBUG | Required DMA formats for vapostproc: ["NV12", "YV12", "YU12", "P010", "P012", "R8  ", "YUYV", "YU24", "AB24", "AR24", "XB24", "XR24", "AR30"]
13:46:31.072661927 INFO  | Using zero copy pipeline on AMD (/dev/dri/renderD129)
13:46:31.125964238 DEBUG | Loading server certificates from disk: /etc/wolf/cfg/cert.pem /etc/wolf/cfg/key.pem
13:46:31.134041905 DEBUG | We are running as container ID 1dc43da9d1a9bf6034d101bf320ad60a84607a772804707eac3b37be02f2e256
13:46:31.134088360 INFO  | Detected mounted /etc/wolf in the host as /wolf-data
13:46:31.134108398 INFO  | Detected mounted /run/user/wolf in the host as /var/lib/docker/volumes/ee19991b861da1c9af76398a970a3ceeb123db1c286d91470aa76e740737e924/_data
13:46:31.134257282 INFO  | [RTP] Starting RTP ping server on ports 48100 and 48200
13:46:31.134325294 INFO  | RTSP server started on port: 48010
13:46:31.134378633 INFO  | HTTP server listening on port: 47989 
13:46:31.134398582 INFO  | Control server started on port: 47999
13:46:31.134467936 INFO  | Starting Wolf API server on /run/user/wolf/wolf.sock
13:46:31.134494447 INFO  | Starting mDNS service
13:46:31.134823850 DEBUG | [PULSE] Connecting...
13:46:31.134911326 DEBUG | [PULSE] Context failed
13:46:31.134931001 WARN  | [PULSE] Unable to connect, Access denied
13:46:31.135023337 INFO  | Starting PulseAudio docker container
13:46:31.136376741 INFO  | HTTPS server listening on port: 47984 
13:46:31.151160382 WARN  | [DOCKER] Container WolfPulseAudio already present, removing first
13:46:31.482723610 WARN  | [DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"}

13:46:31.482795625 WARN  | Failed to connect to any PulseAudio server, audio will not be available!
13:46:32.675152418 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:46:32.695488955 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:46:34.912430803 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch
13:46:34.912589170 DEBUG | Host app state folder: /etc/wolf/15310223745673544925/Wolf UI, creating paths
13:46:34.912837927 DEBUG | [STREAM_SESSION] Create wayland compositor
13:46:34.912936302 DEBUG | [STREAM_SESSION] Create virtual audio sink
13:46:34.913054574 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD129 ! video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}, width=1920, height=1080, framerate=60/1 ! 
interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1
13:46:34.916772379 DEBUG | Setting up waylanddisplaysrc
13:46:34.934508369 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:34.934540075 DEBUG | [RTSP] received command OPTIONS
13:46:34.946101977 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:34.946133640 DEBUG | [RTSP] received command DESCRIBE
13:46:34.957714617 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:34.957744403 DEBUG | [RTSP] received command SETUP
13:46:34.971536623 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:34.971568245 DEBUG | [RTSP] received command SETUP
13:46:34.987249733 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:34.987280753 DEBUG | [RTSP] received command SETUP
0:00:04.453511527     1 0x753ad401dd10 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues.
0:00:04.453525049     1 0x753ad401dd10 WARN                basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for  the processing deadline of 0:00:00.020000000, add enough queues to buffer  0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000.
13:46:34.988541820 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1
13:46:34.988608730 INFO  | Wayland display ready, listening on: wayland-1
13:46:34.988879215 DEBUG | [STREAM_SESSION] Start runner
13:46:34.989500404 WARN  | /dev/dri/renderD129 doesn't have a primary node! Available nodes: 4
13:46:35.000378867 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
13:46:35.000527652 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/15310223745673544925/Wolf UI/udev/data
13:46:35.005860284 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:35.005901485 DEBUG | [RTSP] received command ANNOUNCE
13:46:35.006026826 DEBUG | [RTSP] Moonlight requested video format HEVC
13:46:35.006040888 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps
13:46:35.013662570 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI]
13:46:35.013955928 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13
13:46:35.014028454 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}}
13:46:35.020413946 DEBUG | [RTSP] found session by matching payload: 144.151.141.19
13:46:35.020442586 DEBUG | [RTSP] received command PLAY
13:46:35.024686213 DEBUG | [ENET] connected client: 172.16.10.2:38278
13:46:35.026224534 DEBUG | Starting video pipeline: 
interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream !
vapostproc add-borders=true !
video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 !
vah265enc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=15308 cpb-size=15308 key-int-max=1024 rate-control=cqp target-usage=6 !
h265parse !
video/x-h265, profile=main, stream-format=byte-stream !
rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 !
appsink sync=false name=wolf_udp_sink

13:46:35.027987121 DEBUG | Setting up wolf_udp_sink
13:46:35.028143618 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle
0:00:04.501764212     1 0x753a7c000de0 WARN               vaencoder gstvaencoder.c:750:gst_va_encoder_get_prediction_direction:<vaencoder2> Driver does not support query prediction direction
0:00:04.501784810     1 0x753a7c000de0 WARN               vaencoder gstvaencoder.c:839:gst_va_encoder_has_trellis:<vaencoder2> Driver does not support trellis
0:00:04.524199290     1 0x753a7c000de0 WARN                 basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore
13:46:35.163229835 WARN  | [DOCKER] error 500 - {"message":"invalid volume specification: '/var/lib/docker/volumes/ee19991b861da1c9af76398a970a3ceeb123db1c286d91470aa76e740737e924/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty"}

13:46:35.163345210 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925
13:46:35.163383490 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925
13:46:35.163574508 INFO  | [GSTREAMER] Pipeline reached End Of Stream
13:46:35.176722973 INFO  | [GSTREAMER] Pipeline reached End Of Stream
13:46:35.228291732 DEBUG | [ENET] disconnected client: 172.16.10.2:38278
13:46:35.392517953 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:46:35.407467719 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:46:35.425490895 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist
13:46:35.461398545 DEBUG | Starting audio pipeline: 
interpipesrc name=interpipesrc_15310223745673544925_audio listen-to=15310223745673544925_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false !
queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert !
opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 !
rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="b4e3d3c4b2ebf4539a53371f2e18dc40" aes_iv="-1838824562" !
appsink name=wolf_udp_sink
13:46:35.463433888 DEBUG | Setting up wolf_udp_sink
13:46:38.438932641 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:46:38.462111585 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:46:41.480668938 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:46:41.502277920 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
13:46:44.522184494 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo
13:46:44.539146279 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo
<!-- gh-comment-id:3538775931 --> @Gailoks commented on GitHub (Nov 16, 2025): Here is my hardware: Xeon e5 2680v4 64Gb ecc ddr4 gpu1: Intel arc a380 (It worked fine previously) gpu2: AMD Rx 6800 LXC config ``` arch: amd64 cores: 14 dev0: /dev/uinput dev1: /dev/uhid features: nesting=1 hostname: Wolf memory: 32768 mp0: /mnt/storage/wolf,mp=/wolf-data mp1: /mnt/storage/games,mp=/games net0: name=eth0,bridge=vmbr,hwaddr=BC:24:11:17:DC:40,ip=dhcp,type=veth onboot: 1 ostype: ubuntu rootfs: vm-new:vm-112-disk-0,size=24G swap: 0 tags: docker;gpu;open_port;privileged lxc.cgroup2.devices.allow: a lxc.cap.drop: lxc.cgroup2.devices.allow: c 188:* rwm lxc.cgroup2.devices.allow: c 189:* rwm lxc.mount.entry: /dev/serial/by-id dev/serial/by-id none bind,optional,create=dir lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir lxc.mount.entry: /dev/input dev/input none bind,optional,create=dir lxc.mount.entry: /run/udev mnt/udev none bind,optional,create=dir ``` Full logs with your latest changes: ``` [2025-11-16 13:46:30] [2025-11-16 13:46:30] [ /etc/cont-init.d/10-setup_user.sh: executing... ] [2025-11-16 13:46:30] **** Configure default user **** [2025-11-16 13:46:30] Container running as root. Nothing to do. [2025-11-16 13:46:30] DONE [2025-11-16 13:46:30] [2025-11-16 13:46:30] [ /etc/cont-init.d/15-setup_devices.sh: executing... ] [2025-11-16 13:46:30] **** Configure devices **** [2025-11-16 13:46:30] Exec device groups [2025-11-16 13:46:30] Adding user 'root' to groups: gow-gid-102,root [2025-11-16 13:46:30] DONE [2025-11-16 13:46:30] [2025-11-16 13:46:30] [ /etc/cont-init.d/30-nvidia.sh: executing... ] [2025-11-16 13:46:30] [2025-11-16 13:46:30] [ /etc/cont-init.d/init-gamescope.sh: executing... ] [2025-11-16 13:46:30] Launching the container's startup script as user 'root' 0:00:00.011969620 154 0x597b16615300 WARN vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: No such file or directory amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description. If they do, bad things may happen! 0:00:00.104394560 154 0x597b16615300 WARN vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending 0:00:00.220995227 154 0x597b16615300 WARN msdkcontext gstmsdkcontext.c:178:gst_msdk_context_use_vaapi: Couldn't find a drm device node to open 0:00:00.222426840 154 0x597b16615300 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a48c20> Could not set value on item: format-version 0:00:00.222455994 154 0x597b16615300 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a48cb0> Could not set value on item: format-version 0:00:00.222472724 154 0x597b16615300 WARN default ges-meta-container.c:238:_set_value:<GESAsset@0x597b16a33f30> Could not set value on item: format-version 0:00:00.222907683 154 0x597b16615300 WARN structure gststructure.c:3378:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype 0:00:00.279050838 154 0x597b16615300 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:00.301551127 154 0x597b16615300 WARN cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 0:00:00.345437979 154 0x597b16615300 WARN vaapiblend gstvaapiblend.c:184:gst_vaapi_blend_initialize:<vaapiblend0> VPP does not support global alpha blending 0:00:00.381008794 154 0x597b16615300 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:00.384887757 1 0x58ba0c8a87c0 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 0:00:00.386613584 154 0x597b16615300 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise 0:00:00.392232202 154 0x597b16615300 WARN GST_PLUGIN_LOADING gstplugin.c:546:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so" failed to initialise 0:00:00.398670554 1 0x58ba0c8a87c0 WARN GST_REGISTRY gstregistry.c:457:gst_registry_add_plugin:<registry0> Not replacing plugin because new one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstvalidatessim.so) is blacklisted but for a different location than existing one (/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so) 13:46:30.953641517 INFO | Gstreamer version: 1.26.7-0 0:00:00.420105314 1 0x58ba0c8a87c0 WARN cudaloader gstcudaloader.cpp:358:gst_cuda_load_library_once_func: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 13:46:30.955029515 DEBUG | XDG_RUNTIME_DIR=/run/user/wolf 13:46:30.955056582 INFO | Reading config file from: /etc/wolf/cfg/config.toml 13:46:30.969115184 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 13:46:30.969216512 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 13:46:30.969251599 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 0:00:00.443265805 1 0x58ba0c8a87c0 WARN vadisplay gstvadisplay_drm.c:143:gst_va_display_drm_create_va_display:<vadisplaydrm0> Failed to open /dev/dri/renderD128: No such file or directory amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description. If they do, bad things may happen! 0:00:00.497306915 1 0x58ba0c8a87c0 WARN vafilter gstvafilter.c:1787:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending 13:46:31.060610796 DEBUG | Checking if varenderD129h264enc is available 0:00:00.525801800 1 0x58ba0c8a87c0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h264enc"! 13:46:31.060714372 INFO | Using h264 encoder: va 13:46:31.060755318 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 13:46:31.060787728 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 13:46:31.071495201 DEBUG | Checking if varenderD129h265enc is available 0:00:00.536682619 1 0x58ba0c8a87c0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "varenderD129h265enc"! 13:46:31.071593759 INFO | Using h265 encoder: va 13:46:31.071634878 DEBUG | Skipping NVIDIA encoder, not a NVIDIA GPU (1) 13:46:31.071667467 DEBUG | Skipping QUICKSYNC encoder, not an Intel GPU (1) 0:00:00.536811041 1 0x58ba0c8a87c0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1enc"! 0:00:00.536838515 1 0x58ba0c8a87c0 WARN GST_ELEMENT_FACTORY gstelementfactory.c:713:gst_element_factory_make_with_properties: no such element factory "vaav1lpenc"! 13:46:31.072496062 INFO | Using av1 encoder: aom 13:46:31.072516972 WARN | Software av1 encoder detected 13:46:31.072609809 DEBUG | Required DMA formats for vapostproc: ["NV12", "YV12", "YU12", "P010", "P012", "R8 ", "YUYV", "YU24", "AB24", "AR24", "XB24", "XR24", "AR30"] 13:46:31.072661927 INFO | Using zero copy pipeline on AMD (/dev/dri/renderD129) 13:46:31.125964238 DEBUG | Loading server certificates from disk: /etc/wolf/cfg/cert.pem /etc/wolf/cfg/key.pem 13:46:31.134041905 DEBUG | We are running as container ID 1dc43da9d1a9bf6034d101bf320ad60a84607a772804707eac3b37be02f2e256 13:46:31.134088360 INFO | Detected mounted /etc/wolf in the host as /wolf-data 13:46:31.134108398 INFO | Detected mounted /run/user/wolf in the host as /var/lib/docker/volumes/ee19991b861da1c9af76398a970a3ceeb123db1c286d91470aa76e740737e924/_data 13:46:31.134257282 INFO | [RTP] Starting RTP ping server on ports 48100 and 48200 13:46:31.134325294 INFO | RTSP server started on port: 48010 13:46:31.134378633 INFO | HTTP server listening on port: 47989 13:46:31.134398582 INFO | Control server started on port: 47999 13:46:31.134467936 INFO | Starting Wolf API server on /run/user/wolf/wolf.sock 13:46:31.134494447 INFO | Starting mDNS service 13:46:31.134823850 DEBUG | [PULSE] Connecting... 13:46:31.134911326 DEBUG | [PULSE] Context failed 13:46:31.134931001 WARN | [PULSE] Unable to connect, Access denied 13:46:31.135023337 INFO | Starting PulseAudio docker container 13:46:31.136376741 INFO | HTTPS server listening on port: 47984 13:46:31.151160382 WARN | [DOCKER] Container WolfPulseAudio already present, removing first 13:46:31.482723610 WARN | [DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"} 13:46:31.482795625 WARN | Failed to connect to any PulseAudio server, audio will not be available! 13:46:32.675152418 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:46:32.695488955 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:46:34.912430803 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/launch 13:46:34.912589170 DEBUG | Host app state folder: /etc/wolf/15310223745673544925/Wolf UI, creating paths 13:46:34.912837927 DEBUG | [STREAM_SESSION] Create wayland compositor 13:46:34.912936302 DEBUG | [STREAM_SESSION] Create virtual audio sink 13:46:34.913054574 DEBUG | [GSTREAMER] Starting video producer: waylanddisplaysrc name=wolf_wayland_source render_node=/dev/dri/renderD129 ! video/x-raw(memory:DMABuf), drm-format={NV12,YV12,YU12,P012,YUYV,YU24,AB24,AR24,XB24,XR24}, width=1920, height=1080, framerate=60/1 ! interpipesink sync=true async=false name=15310223745673544925_video max-buffers=1 13:46:34.916772379 DEBUG | Setting up waylanddisplaysrc 13:46:34.934508369 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:34.934540075 DEBUG | [RTSP] received command OPTIONS 13:46:34.946101977 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:34.946133640 DEBUG | [RTSP] received command DESCRIBE 13:46:34.957714617 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:34.957744403 DEBUG | [RTSP] received command SETUP 13:46:34.971536623 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:34.971568245 DEBUG | [RTSP] received command SETUP 13:46:34.987249733 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:34.987280753 DEBUG | [RTSP] received command SETUP 0:00:04.453511527 1 0x753ad401dd10 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Pipeline construction is invalid, please add queues. 0:00:04.453525049 1 0x753ad401dd10 WARN basesink gstbasesink.c:1248:gst_base_sink_query_latency:<15310223745673544925_video> warning: Not enough buffering available for the processing deadline of 0:00:00.020000000, add enough queues to buffer 0:00:00.020000000 additional data. Shortening processing latency to 0:00:00.000000000. 13:46:34.988541820 DEBUG | Wayland source message: WAYLAND_DISPLAY = wayland-1 13:46:34.988608730 INFO | Wayland display ready, listening on: wayland-1 13:46:34.988879215 DEBUG | [STREAM_SESSION] Start runner 13:46:34.989500404 WARN | /dev/dri/renderD129 doesn't have a primary node! Available nodes: 4 13:46:35.000378867 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 13:46:35.000527652 DEBUG | [DOCKER] Using fake-udev, creating /etc/wolf/15310223745673544925/Wolf UI/udev/data 13:46:35.005860284 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:35.005901485 DEBUG | [RTSP] received command ANNOUNCE 13:46:35.006026826 DEBUG | [RTSP] Moonlight requested video format HEVC 13:46:35.006040888 DEBUG | [RTSP] Adjusted video bitrate to 15308 Kbps 13:46:35.013662570 DEBUG | /dev/dri/renderD129 vendor: Advanced Micro Devices, Inc. [AMD/ATI] 13:46:35.013955928 DEBUG | [DOCKER] Setting DeviceCgroupRules for hidraw:239 and input:13 13:46:35.014028454 DEBUG | [DOCKER] Container options: {"HostConfig":{"IpcMode":"host","CapAdd":["NET_RAW","MKNOD","NET_ADMIN","SYS_ADMIN","SYS_NICE"],"Privileged":false,"DeviceCgroupRules":["c 239:* rwm","c 13:* rwm"]}} 13:46:35.020413946 DEBUG | [RTSP] found session by matching payload: 144.151.141.19 13:46:35.020442586 DEBUG | [RTSP] received command PLAY 13:46:35.024686213 DEBUG | [ENET] connected client: 172.16.10.2:38278 13:46:35.026224534 DEBUG | Starting video pipeline: interpipesrc name=interpipesrc_15310223745673544925_video listen-to=15310223745673544925_video is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=1 leaky-type=downstream ! vapostproc add-borders=true ! video/x-raw(memory:VAMemory), format=NV12, width=1920, height=1080, pixel-aspect-ratio=1/1 ! vah265enc aud=false b-frames=0 ref-frames=1 num-slices=1 bitrate=15308 cpb-size=15308 key-int-max=1024 rate-control=cqp target-usage=6 ! h265parse ! video/x-h265, profile=main, stream-format=byte-stream ! rtpmoonlightpay_video name=moonlight_pay payload_size=1024 fec_percentage=20 min_required_fec_packets=2 ! appsink sync=false name=wolf_udp_sink 13:46:35.027987121 DEBUG | Setting up wolf_udp_sink 13:46:35.028143618 DEBUG | Received NEED_CONTEXT for type gst.va.display.handle 0:00:04.501764212 1 0x753a7c000de0 WARN vaencoder gstvaencoder.c:750:gst_va_encoder_get_prediction_direction:<vaencoder2> Driver does not support query prediction direction 0:00:04.501784810 1 0x753a7c000de0 WARN vaencoder gstvaencoder.c:839:gst_va_encoder_has_trellis:<vaencoder2> Driver does not support trellis 0:00:04.524199290 1 0x753a7c000de0 WARN basesrc gstbasesrc.c:4255:gst_base_src_push_segment:<interpipesrc_15310223745673544925_video> segment format mismatched, ignore 13:46:35.163229835 WARN | [DOCKER] error 500 - {"message":"invalid volume specification: '/var/lib/docker/volumes/ee19991b861da1c9af76398a970a3ceeb123db1c286d91470aa76e740737e924/_data/::rw': invalid mount config for type \"bind\": field Target must not be empty"} 13:46:35.163345210 DEBUG | [GSTREAMER] Stopping pipeline: 15310223745673544925 13:46:35.163383490 DEBUG | [GSTREAMER] Stopping video producer: 15310223745673544925 13:46:35.163574508 INFO | [GSTREAMER] Pipeline reached End Of Stream 13:46:35.176722973 INFO | [GSTREAMER] Pipeline reached End Of Stream 13:46:35.228291732 DEBUG | [ENET] disconnected client: 172.16.10.2:38278 13:46:35.392517953 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:46:35.407467719 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:46:35.425490895 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/applist 13:46:35.461398545 DEBUG | Starting audio pipeline: interpipesrc name=interpipesrc_15310223745673544925_audio listen-to=15310223745673544925_audio is-live=true stream-sync=restart-ts max-bytes=0 max-buffers=3 block=false ! queue max-size-buffers=3 leaky=downstream ! audiorate ! audioconvert ! opusenc bitrate=96000 bitrate-type=cbr frame-size=5 bandwidth=fullband audio-type=restricted-lowdelay max-payload-size=1400 ! rtpmoonlightpay_audio name=moonlight_pay packet_duration=5 encrypt=true aes_key="b4e3d3c4b2ebf4539a53371f2e18dc40" aes_iv="-1838824562" ! appsink name=wolf_udp_sink 13:46:35.463433888 DEBUG | Setting up wolf_udp_sink 13:46:38.438932641 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:46:38.462111585 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:46:41.480668938 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:46:41.502277920 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo 13:46:44.522184494 DEBUG | 172.16.10.2 [GET] HTTP://172.16.0.112/serverinfo 13:46:44.539146279 DEBUG | 172.16.10.2 [GET] HTTPS://172.16.0.112/serverinfo ```
Author
Owner

@Gailoks commented on GitHub (Nov 16, 2025):

I tried migrating to Docker 26.0.2, but that didn’t help either — neither the Wolf UI nor the stable builds work any better.

<!-- gh-comment-id:3539181691 --> @Gailoks commented on GitHub (Nov 16, 2025): I tried migrating to Docker 26.0.2, but that didn’t help either — neither the Wolf UI nor the stable builds work any better.
Author
Owner

@ABeltramo commented on GitHub (Nov 16, 2025):

Your issue is

[DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"}

which seems to be completely unrelated to Wolf. After a quick search I've found this issue which might be helpful you should try and see if changing the apparmor rules like they do fixes it for you too..

<!-- gh-comment-id:3539314258 --> @ABeltramo commented on GitHub (Nov 16, 2025): Your issue is ``` [DOCKER] error 400 - {"message":"failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: open sysctl net.ipv4.ip_unprivileged_port_start file: reopen fd 8: permission denied"} ``` which seems to be completely unrelated to Wolf. After a quick search I've found [this issue](https://github.com/opencontainers/runc/issues/4968#issue-3593655843) which might be helpful you should try and see if changing the apparmor rules like they do fixes it for you too..
Author
Owner

@Gailoks commented on GitHub (Nov 17, 2025):

Thanks! The issue is gone — everything is working as it should now.

For reference, here is my full LXC config. I think the official guide should probably be updated to reflect newer Proxmox security requirements:

arch: amd64
cores: 14
dev0: /dev/uinput
dev1: /dev/uhid
features: nesting=1
hostname: Wolf
memory: 32768
mp0: /mnt/storage/wolf,mp=/wolf-data
mp1: /mnt/storage/games,mp=/games
net0: name=eth0,bridge=vmbr,hwaddr=BC:24:11:17:DC:40,ip=dhcp,type=veth
onboot: 1
ostype: ubuntu
rootfs: vm-new:vm-112-disk-0,size=24G
swap: 0
tags: docker;gpu;open_port;privileged
lxc.cgroup2.devices.allow: a
lxc.cap.drop:
lxc.cgroup2.devices.allow: c 188:* rwm
lxc.cgroup2.devices.allow: c 189:* rwm
lxc.mount.entry: /dev/serial/by-id  dev/serial/by-id  none bind,optional,create=dir
lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir
lxc.mount.entry: /dev/input dev/input none bind,optional,create=dir
lxc.mount.entry: /run/udev mnt/udev none bind,optional,create=dir
lxc.apparmor.profile: unconfined
lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled none bind 0 0
<!-- gh-comment-id:3541570198 --> @Gailoks commented on GitHub (Nov 17, 2025): Thanks! The issue is gone — everything is working as it should now. For reference, here is my full LXC config. I think the official guide should probably be updated to reflect newer Proxmox security requirements: ``` arch: amd64 cores: 14 dev0: /dev/uinput dev1: /dev/uhid features: nesting=1 hostname: Wolf memory: 32768 mp0: /mnt/storage/wolf,mp=/wolf-data mp1: /mnt/storage/games,mp=/games net0: name=eth0,bridge=vmbr,hwaddr=BC:24:11:17:DC:40,ip=dhcp,type=veth onboot: 1 ostype: ubuntu rootfs: vm-new:vm-112-disk-0,size=24G swap: 0 tags: docker;gpu;open_port;privileged lxc.cgroup2.devices.allow: a lxc.cap.drop: lxc.cgroup2.devices.allow: c 188:* rwm lxc.cgroup2.devices.allow: c 189:* rwm lxc.mount.entry: /dev/serial/by-id dev/serial/by-id none bind,optional,create=dir lxc.mount.entry: /dev/dri dev/dri none bind,optional,create=dir lxc.mount.entry: /dev/input dev/input none bind,optional,create=dir lxc.mount.entry: /run/udev mnt/udev none bind,optional,create=dir lxc.apparmor.profile: unconfined lxc.mount.entry: /dev/null sys/module/apparmor/parameters/enabled none bind 0 0 ```
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
games-on-whales/wolf#202
No description provided.