Getting GPU acceleration working is a common task for those of us running Plex or Jellyfin. There is not much documentation for getting the NVIDIA container stack to work with Podman, even less on Gentoo, plus there have been a lot of changes to NVIDIA’s container toolkit lately.

I have been fighting with Podman for a while now and just recently got it working 1:1 with my Docker setup. Gentoo may not be the most popular or easy to use distro but I documented it in case some poor soul runs across it searching the web.

Feel free to poke holes in it or leave feedback.

  • @PriorProject
    link
    English
    411 months ago

    This is a pretty awesome how-to. I knew nothing about containerizing GPU workloads before this, and it seems quite a lot less scary/involved than I feared.

    FWIW, I think some of your DNS and general networking woes may be due to the macvlan setup rather than using netavark. Netavark seems like the golden path going forward for a batteries-included experience. Not that I have anything against macvlan, in many ways macvlan feels simplest and nicest for homelab setups and I’ve used it with LXC and other container runtimes in the past. But for the most docker-like “it just works” experience, I feel like netavark is getting the upstream love.

    • @[email protected]OP
      link
      fedilink
      English
      311 months ago

      Thank you!

      Agree, I really wanted netavark to work - it definitely seems like the way forward. I enabled it and out of the box none of my containers could resolve DNS, even though aardvark was running. It’s so new I wasn’t sure where to poke around, so I went with the legacy method.

      I’ll try again once it stabilizes in Gentoo, somebody else noticed netavark should be the default now and opened a bug with the maintainer.

      • @PriorProject
        link
        English
        211 months ago

        I enabled it and out of the box none of my containers could resolve DNS, even though aardvark was running.

        I experienced this on Ubuntu as well, and addressed it by opening up a firewall rule on the network interface for my podman network allowing the ip-range of the podman network to issue DNS requests to the gateway-ip (which is where aardvark-dns sets up shop).

        Also had to add a firewall rule to open whatever ports I exposed from all src-ips to the podman network range before exposing hostPorts would work.

        Again, not critiquing the very capable macvlan setup, just sharing tips I’ve picked up on making netavark work.