MorphNet(1)—— docker 配置
关于docker
一、failure
由于经验不足,在linux端docker配置和nvidia-docker上吃了不少亏,没有详细看说明文档也导致实验进展缓慢,于是摸了摸docker,记录问题并给出个人理解。
二、相关问题
1 | docker build -f Dockerfile -t tensorflow:1.15 |
-f 指示Dockerfile位置
-t/-tag 镜像的名字及标签,通常 name:tag 或者 name 格式;
FROM 镜像源,由于是国外镜像源,build会出现无法解析的问题,需要进行换源处理,在daemon配置文件中加入下面的内容解决
1 | "registry-mirrors":["https://registry.docker-cn.com"] |
但 ln -s 软连接又不能运行了,后来解决了进入docker后通过 whtich python 发现没有python2版本,所以不能执行
将软链接和pip3更新写入后发现还是无法执行,httpcommunicate超时,手动延长等待时间依旧失效,但又不能使用国外源(会导致上面FROM失效或者numpy等找不到对应版本),只能折中使用
1 | RUN pip3 install -i [国内源] --upgrade pip |
构建成功后使用
1 | nvidia-docker run -it --rm -v $(pwd):/mnt -p 5001:6006 tensorflow:1.15 |
虽然nvidia-docker2等已经配置完成,依旧失败
后来尝试使用sudo root权限下运行(因为发现nvidia-container-cli是root用户下包,普通docker用户无法访问),还是失败,出现无images错误,后通过以下指令发现root镜像和普通用户镜像是分开管理的
于是在root用户下重新安装镜像,运行,成功
但是貌似docker desktop并不能识别出root用户下的containers,images倒是可以,后面在看看啥情况。