docker - 如何使用 Docker 构建 YOLACT++?
问题描述
我必须在 docker 环境中构建 yolact++(我使用的是 sagemaker 笔记本)。像这样
ARG PYTORCH="1.3"
ARG CUDA="10.1"
ARG CUDNN="7"
FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel
我想运行这个
COPY yolact/external/DCNv2/setup.py /opt/ml/code/external/DCNv2/setup.py
RUN cd /opt/ml/code/external/DCNv2 && \
python setup.py build develop
但我得到了这个错误:
No CUDA runtime is found, using CUDA_HOME='/usr/local/cuda'
Traceback (most recent call last):
File "setup.py", line 64, in <module>
ext_modules=get_extensions(),
File "setup.py", line 41, in get_extensions
raise NotImplementedError('Cuda is not available')
NotImplementedError: Cuda is not available
但是环境支持CUDA。任何人都知道问题出在哪里?
谢谢你。
解决方案
解决方案 :
我编辑 /etc/docker/daemon.json 的内容:
{
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
},
"default-runtime": "nvidia"
}
然后我重新启动docker守护进程:
sudo system restart docker
它解决了我的问题。
推荐阅读
- tensorflow - 从不同数据集中随机添加样本以检索最终数据集
- c++11 - Handling NULL while using std::move on the tuples
- angular - Angular:如何基于切换启用和禁用输入字段
- c# - 将isf格式转换为png?
- android - 找不到接受参数类型“android.text.TextWatcher”的 android.widget.EditText android:onTextChanged 的设置器
- python - 从 environment.yml 文件中使用 pipenv 在虚拟环境中安装包
- php - 为什么我不能在字符串中使用“@”运算符?
- jmeter - 使用 Ant 测试运行的 Jmeter 因“转换期间出现致命错误”而失败
- scala - 如何从 Akka HTTP POST 请求中读取 JSON 正文并将最终响应作为 JSON 数组发送
- php - 当值为空或不需要时,如何在使用 html5 表单占位符时使用 str_replace?