docker常见问题
❓问题1:启动docker容器时,报错Unknown runtime specified nvidia.
当我启动一个容器时,运行以下命令:
docker run --runtime=nvidia 。。。。
后面一部分命令没写出来,此时报错的信息如下:
docker: Error response from daemon: Unknown runtime specified nvidia. See 'docker run --help'.
报错的信息显示
runtime=nvidia
无法识别,这说明daemon.json
配置文件出错。
解决方案
修改/etc/docker/daemon.json
(需要管理员权限),添加如下的内容:
bash
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
修改后的文件整体信息如下:
bash
{
"data-root": "/mnt/docker",
"runtimes": {
"nvidia": {
"path": "/usr/bin/nvidia-container-runtime",
"runtimeArgs": []
}
}
}
然后重启docker就好了:
bash
sudo systemctl daemon-reload
sudo systemctl restart docker
❓问题2:解决ssh连接docker容器环境变量无效的问题
问题缘由:
因在docker容器中的linux系统输入
nvcc
等命令都是有效的,但通过ssh连接到docker容器内,就存在该命令未找到等问题,查询资料得知,这是因为通过ssh连接docker容器后环境变量发生了变化。
修改方法:解决方法:更改字段分隔符,使之仅仅遇到换行时分割
在容器中输入 vim /etc/profile
,添加以下代码:
bash
for item in `cat /proc/1/environ |tr '\0' '\n'`
do
export $item
done
- 然后重新打开 docker即可。
❓问题3:激活虚拟环境报错
输入 conda activate CFT-main
报以下错误:
bash
usage: conda [-h] [-v] [--no-plugins] [-V] COMMAND ...
conda: error: argument COMMAND: invalid choice: 'activate' (choose from 'clean', 'compare', 'config', 'create', 'info', 'init', 'install', 'list', 'notices', 'package', 'remove', 'uninstall', 'rename', 'run', 'search', 'update', 'upgrade', 'build', 'content-trust', 'convert', 'debug', 'develop', 'doctor', 'index', 'inspect', 'metapackage', 'render', 'skeleton', 'env')
终端输入 conda init
即可。
bash
conda init
注:仅供学习参考,如有不足,欢迎指正!