games-on-whales / wolf

Stream virtual desktops and games running in Docker
https://games-on-whales.github.io/wolf/stable/
MIT License
292 stars 20 forks source link

After pulling the latest image.. #64

Closed NovumGain closed 4 months ago

NovumGain commented 4 months ago

After pulling the latest image, I'm getting the following error:

[user@user-NAS:/aeternae/data_servers/wolf-GOW]$ sudo docker-compose up
[+] Running 1/1
 ✔ Container wolf-gow-wolf-1  Recreated                                                                                                                             4.6s 
Attaching to wolf-1
wolf-1  | [2024-02-17 21:33:58] 
wolf-1  | [2024-02-17 21:33:58] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
wolf-1  | [2024-02-17 21:33:58] **** Configure default user ****
wolf-1  | [2024-02-17 21:33:58] Container running as root. Nothing to do.
wolf-1  | [2024-02-17 21:33:58] DONE
wolf-1  | [2024-02-17 21:33:58] 
wolf-1  | [2024-02-17 21:33:58] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
wolf-1  | [2024-02-17 21:33:58] **** Configure devices ****
wolf-1  | [2024-02-17 21:33:58] Exec device groups
wolf-1  | [2024-02-17 21:33:58] Adding user 'root' to groups: gow-gid-174
wolf-1  | [2024-02-17 21:33:59] DONE
wolf-1  | [2024-02-17 21:33:59] 
wolf-1  | [2024-02-17 21:33:59] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
wolf-1  | [2024-02-17 21:33:59] 
wolf-1  | [2024-02-17 21:33:59] 
wolf-1  | [2024-02-17 21:33:59] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
wolf-1  | [2024-02-17 21:33:59] **** Setting up Gamescope ****
wolf-1  | [2024-02-17 21:33:59] Launching the container's startup script as user 'root'
wolf-1  | cp: cannot create regular file '/aeternae/data_servers/wolf-GOW/sessions/fake-udev': No such file or directory
wolf-1 exited with code 0

What can I do to fix it? Completely vanilla docker-compose file, for the most part, too...lemme include it just in-case.

version: "3.8"
services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:stable
    environment:
      - XDG_RUNTIME_DIR=/tmp/sockets
      - HOST_APPS_STATE_FOLDER=./sessions
    volumes:
      - ./wolf/:/etc/wolf
      - /tmp/sockets:/tmp/sockets:rw
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /dev/shm:/dev/shm:rw
      - /dev/input:/dev/input:rw
      - /run/udev:/run/udev:rw
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri
      - /dev/uinput
    network_mode: host
    restart: unless-stopped
ABeltramo commented 4 months ago

I think you are messing up the folders: Wolf requires that the HOST_APPS_STATE_FOLDER is mounted on the same path inside the container.
From the error, it looks like the local ./sessions is in the host under /aeternae/data_servers/wolf-GOW/sessions/ so you'll have to mount /aeternae/data_servers/wolf-GOW/sessions/:/aeternae/data_servers/wolf-GOW/sessions/:rw

NovumGain commented 4 months ago

I tried to host it in the docker-compose as well as in the .toml file, but neither worked -- I suspect I'm doing it in the wrong area, though. Where am I supposed to mount it?

NovumGain commented 4 months ago

Oh wait, I might've gotten it

NovumGain commented 4 months ago
[user@user-NAS:/aeternae/data_servers/wolf-GOW]$ sudo docker-compose up
[+] Running 1/1
 ✔ Container wolf-gow-wolf-1  Recreated                                                                                                                             3.3s 
Attaching to wolf-1
wolf-1  | [2024-02-18 22:20:50] 
wolf-1  | [2024-02-18 22:20:50] [ /etc/cont-init.d/10-setup_user.sh: executing... ]
wolf-1  | [2024-02-18 22:20:50] **** Configure default user ****
wolf-1  | [2024-02-18 22:20:50] Container running as root. Nothing to do.
wolf-1  | [2024-02-18 22:20:50] DONE
wolf-1  | [2024-02-18 22:20:50] 
wolf-1  | [2024-02-18 22:20:50] [ /etc/cont-init.d/15-setup_devices.sh: executing... ]
wolf-1  | [2024-02-18 22:20:50] **** Configure devices ****
wolf-1  | [2024-02-18 22:20:50] Exec device groups
wolf-1  | [2024-02-18 22:20:50] Adding user 'root' to groups: gow-gid-174
wolf-1  | [2024-02-18 22:20:50] DONE
wolf-1  | [2024-02-18 22:20:50] 
wolf-1  | [2024-02-18 22:20:50] [ /etc/cont-init.d/30-nvidia.sh: executing... ]
wolf-1  | [2024-02-18 22:20:50] 
wolf-1  | [2024-02-18 22:20:50] 
wolf-1  | [2024-02-18 22:20:50] [ /etc/cont-init.d/init-gamescope.sh: executing... ]
wolf-1  | [2024-02-18 22:20:50] **** Setting up Gamescope ****
wolf-1  | [2024-02-18 22:20:50] Launching the container's startup script as user 'root'
wolf-1  | amdgpu: os_same_file_description couldn't determine if two DRM fds reference the same file description.
wolf-1  | If they do, bad things may happen!
wolf-1  | 0:00:00.282061698   142 0x561f2fcd5c70 WARN                vafilter gstvafilter.c:1726:gst_va_filter_has_compose:<vafilter0> VPP does not support alpha blending
wolf-1  | 0:00:00.307482041   142 0x561f2fcd5c70 WARN          adaptivedemux2 gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init: Failed to load libsoup library
wolf-1  | 0:00:00.307604632   142 0x561f2fcd5c70 WARN          adaptivedemux2 gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init: Failed to load libsoup library
wolf-1  | 0:00:00.307733882   142 0x561f2fcd5c70 WARN          adaptivedemux2 gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init: Failed to load libsoup library
wolf-1  | 0:00:00.321145340   142 0x561f2fcd5c70 WARN                 default gstvaapi.c:231:plugin_init: Cannot create a VA display
wolf-1  | 0:00:00.325588696   142 0x561f2fcd5c70 WARN      GST_PLUGIN_LOADING gstplugin.c:534:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
wolf-1  | 0:00:00.338589553   142 0x561f2fcd5c70 WARN      GST_PLUGIN_LOADING gstplugin.c:508:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/libgstwaylanddisplaysrc.so" has unknown license "MIT"
wolf-1  | 0:00:00.342744489   142 0x561f2fcd5c70 WARN              cudaloader gstcudaloader.c:169:gst_cuda_load_library: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory
wolf-1  | 0:00:00.342758329   142 0x561f2fcd5c70 WARN                 nvcodec plugin.c:94:plugin_init: Failed to load cuda library
wolf-1  | 0:00:00.354763015   142 0x561f2fcd5c70 WARN                 default ges-meta-container.c:236:_set_value:<GESAsset@0x561f2f9afc00> Could not set value on item: format-version
wolf-1  | 0:00:00.354781915   142 0x561f2fcd5c70 WARN                 default ges-meta-container.c:236:_set_value:<GESAsset@0x561f2fb14220> Could not set value on item: format-version
wolf-1  | 0:00:00.354795005   142 0x561f2fcd5c70 WARN                 default ges-meta-container.c:236:_set_value:<GESAsset@0x561f2fb14a30> Could not set value on item: format-version
wolf-1  | 0:00:00.355517346   142 0x561f2fcd5c70 WARN               structure gststructure.c:2334:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype
wolf-1  | 0:00:00.374138741   142 0x561f2fcd5c70 WARN      GST_PLUGIN_LOADING gstplugin.c:534:gst_plugin_register_func: plugin "/usr/local/lib/x86_64-linux-gnu/gstreamer-1.0/validate/libgstvalidatessim.so" failed to initialise
wolf-1  | 22:20:51.248869274 INFO  | Gstreamer version: 1.22.7-0
wolf-1  | 22:20:51.254298152 INFO  | Reading config file from: /etc/wolf/cfg/config.toml
wolf-1  | 22:20:51.254390252 WARN  | Unable to open config file: /etc/wolf/cfg/config.toml, creating one using defaults
wolf-1  | 22:20:51.256498245 ERROR | Unhandled exception: toml::parse: file open error -> /etc/wolf/cfg/config.toml
wolf-1 exited with code 0

This is my current issue, with my docker-compose being,

version: "3.8"
services:
  wolf:
    image: ghcr.io/games-on-whales/wolf:stable
    environment:
      - XDG_RUNTIME_DIR=/tmp/sockets
      - HOST_APPS_STATE_FOLDER=/aeternae/data_servers/wolf-GOW/sessions/
    volumes:
      - /aeternae/data_servers/wolf-GOW/wolf:/etc/wolf
      - /tmp/sockets:/tmp/sockets:rw
      - /var/run/docker.sock:/var/run/docker.sock:rw
      - /aeternae/data_servers/wolf-GOW/wolf/:/etc/wolf/:rw
      - /aeternae/data_servers/wolf-GOW/sessions/:/aeternae/data_servers/wolf-GOW/sessions/:rw
      - /dev/shm:/dev/shm:rw
      - /dev/input:/dev/input:rw
      - /run/udev:/run/udev:rw
    device_cgroup_rules:
      - 'c 13:* rmw'
    devices:
      - /dev/dri
      - /dev/uinput
    network_mode: host
    restart: unless-stopped

The thing that was in the "wolf" folder, has vanished (the config and all that), and now I'm left with this.. any ideas?

ABeltramo commented 4 months ago

I believe that you are just missing the cfg folder under /aeternae/data_servers/wolf-GOW/wolf/.
You can either manually make that folder, or change that to be mounted to /etc/wolf/cfg or change the env variable WOLF_CFG_FOLDER to make it point to any other path inside the container

NovumGain commented 4 months ago

Alright will give it a shot -- sorry if I'm asking seemingly-basic questions -- my mental health really isn't doing so great, so but I'm trying to work hard despite it.

NovumGain commented 4 months ago

Alright, it seemed to work -- thank you very much. I'll try to keep all the dumb questions to a minimum, lol.

NovumGain commented 4 months ago

Alright, it looks like Retroarch and Steam are functioning -- the last test is actual gaming, which I need to wait for steam to download some games -- but I'll make a new thread for that; thank you very much! This is amazing.