Skip to content

Using "devices" in a component or running the component as privileged #9

@pabloromeo

Description

@pabloromeo

I'm aware that podlike is no longer under active development, however I decided to give it a shot to try to circumvent the limitation that docker swarm does not allow devices to be mounted on services.
So I thought I'd ask here about the issue I'm having in case during any of your tests you encountered something similar.

I'm my scenario I'm actually trying to run Emby as a component, to be able to mount /dev/vchiq which is the VideoCore on Raspberry Pi 4, to allow for hardware encoding/decoding.

So, everything works fine for regular containers, like an nginx, or even an Emby container without devices.
However, as soon as I add:

    devices:
      - /dev/vchiq:/dev/vchiq

I start seeing the following error when attempting to create the container:

Using API version: 1.41
Starting component: emby
Exited: emby Error: Failed to start emby: Error response from daemon: OCI runtime create failed: container_linux.go:370: starting container process caused: process_linux.go:459: container init caused: process_linux.go:422: setting cgroup config for procHooks process caused: failed to write "a *:* rwm" to "/sys/fs/cgroup/devices/docker/3f1586043f59a13ba56ebdb46d9b569387019688cf465a5bd8a74111d223753c/86414a1dda9d7898ac5022151245b09edd84cb038c967002c3b21146aeddad50/devices.allow": write /sys/fs/cgroup/devices/docker/3f1586043f59a13ba56ebdb46d9b569387019688cf465a5bd8a74111d223753c/86414a1dda9d7898ac5022151245b09edd84cb038c967002c3b21146aeddad50/devices.allow: operation not permitted: unknown
Stopping container: emby
Failed to stop the container: Error response from daemon: No such container: 86414a1dda9d7898ac5022151245b09edd84cb038c967002c3b21146aeddad50
Failed to remove the container: Error: No such container: 86414a1dda9d7898ac5022151245b09edd84cb038c967002c3b21146aeddad50

The same occurs if instead of devices I attempt to set the component as privileged:

services:
  emby:
    image: ghcr.io/linuxserver/emby
    privileged: true

Now, the odd thing is, I have the Emby component's configuration inside a compose file. And if I manually start that exact same compose using docker-compose up everything works fine.

Did you encounter anything like this? I can't seem to find what is different between manually running docker-compose or what podlike does when it starts the container.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions