If you want to use GPUs with CoreOS and Docker 18.06.3 you need to use the following:
https://github.com/NVIDIA/nvidia-container-runtime, which installs a custom runtime and a
prestart hook that is called by this runtime to enable GPUs in the container.
I wouldn't call the GPU support that comes with Docker 19.03 , "native",
the only thing that this Docker version is doing is calling the nvidia-prestart-hook
without the need to install the custom runtime. It is a hardcoded call of the prestart
hook in containerd.
If you use GPUs with Fedora CoreOS, you only need to install the nvidia-prestart-hook, the
Docker version that comes with Fedora can natively execute any prestart hooks (all OCI
hooks are supported). Fedora or RHELs version of Docker use runC as the runtime.