我正在尝试构建一个安装了dcn_v2的docker镜像,并为CUDA支持而构建。
我已经在机器上安装了nvidia-drivers
(450),nvidia-cuda-runtime
,nvidia-docker
,nvidia-cuda-toolkit
。
我的dockerfile开始FROM pytorch/pytorch:1.7.0-cuda11.0-cudnn8-devel
在安装其他要求后的某个时间点
RUN git clone -b pytorch_1.7 https://github.com/ifzhang/DCNv2.git
WORKDIR DCNv2
RUN python3 setup.py build develop
我已经按照说明找到了here,并为我的docker设置了nvidia-runtime默认值,并重新启动了系统。
我的/etc/docker/daemon.json
看起来像这样
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia"
}
我也试着遵循这里的建议
使用DOCKER_BUILDKIT=0 docker build <blah>
构建
然而,一旦我到达安装我得到一个错误RuntimeError: Found no NVIDIA driver on your system.
1条答案
按热度按时间aurhwmvo1#
我无法在构建过程中使驱动程序可用。但是,如果有人发现自己处于这种情况:
1.只使用“FROM”语句创建一个基础映像
1.使用
--gpus all
运行映像1.在容器内构建任何你需要的gpu和驱动程序。
1.从不同的终端执行
docker ps
1.获取正在运行的容器的id
1.做
docker commit container_id Tag
1.使用新创建的图像作为基础,并保存该图像的地方
看起来超级hacky,但嘿-它的工作。