MorphNet(1)—— docker 配置
Guangtong li Lv1

关于docker

一、failure

由于经验不足,在linux端docker配置和nvidia-docker上吃了不少亏,没有详细看说明文档也导致实验进展缓慢,于是摸了摸docker,记录问题并给出个人理解。

二、相关问题

1
docker build -f Dockerfile -t tensorflow:1.15 

-f 指示Dockerfile位置

-t/-tag 镜像的名字及标签,通常 name:tag 或者 name 格式;

image

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 

image

构建成功后使用

1
nvidia-docker run -it --rm -v $(pwd):/mnt -p 5001:6006 tensorflow:1.15

虽然nvidia-docker2等已经配置完成,依旧失败

image

后来尝试使用sudo root权限下运行(因为发现nvidia-container-cli是root用户下包,普通docker用户无法访问),还是失败,出现无images错误,后通过以下指令发现root镜像和普通用户镜像是分开管理的

image

于是在root用户下重新安装镜像,运行,成功

image

但是貌似docker desktop并不能识别出root用户下的containers,images倒是可以,后面在看看啥情况。

image