重新启动现有 docker 容器时如何指向初始运行时

How to point to initial runtime when restarting an existing docker container

我想重新启动一个 docker 容器,在退出并重新启动后,使用与最初创建时相同的运行时。

这是我目前所做的。

创建容器:

sudo docker run --runtime=nvidia [...]

退出容器并重启后重启Docker:

service docker restart

重启之前创建的容器:

sudo docker start my_container

重新打开容器。

docker exec -it my_container [...]

随后在容器中启动的程序未按预期使用 Nvidia GPU。它改为使用系统 CPU.

如有任何帮助,我们将不胜感激。

我通过使用 --restart=unless-stopped 策略创建一个新容器获得了预期的结果,该策略允许 Docker 在 Docker 服务重新启动时自行重新启动容器。与我使用的 start/exec 序列相比,在此过程中完成的工作似乎更多。