It appears that whenever something triggers systemctl daemon-reload the GPUs disappear from the containers.
This is documented along with a workaround here:
That page suggests that the issue has been resolved, however it definitely hadn’t for me. The workaround (use cgroupfs as the cgroup driver for containers) has solved the issue though.