深度学习环境搭建-docker篇

1、先根据gpu型号从nvidia官网(http://www.geforce.cn/drivers)下载相应得驱动

具体安装步骤参考如下博客:

https://blog.csdn.net/hjq376247328/article/details/79816992

https://blog.csdn.net/sunnydream1112/article/details/80587047

安装过程中提示would you ...处选择no,其余选择yes即可;

2、先安装docker,然后安装nvidia-docker,只有安装完nvidia-docker才能让深度学习框架使用GPU;

参考博客:https://blog.csdn.net/qq_41493990/article/details/81624419

http://www.360doc.com/content/17/0704/16/44420101_668747743.shtml

3、docker是一种虚拟化技术,正常安装深度学习相关框架是安装nvidia驱动,然后安装cuda和cudnn,然后安装框架,而docker得技术就是只需要安装nvidia驱动,然后安装docker,之后通过docker命令直接下载带有相应版本得深度学习框架镜像即可,避免了需要安装cuda和cudnn得繁琐过程;

docker hub是存放镜像得库,类似于github是代码托管库;

docker hub网址:http://hub.docker.com/

4、安装好nvidia-docker后,修改docker镜像得默认下载存储位置,并重启docker服务

vi /lib/systemd/system/docker.service   ##然后修改ExecStart=/usr/bin/dockerd  -D --data-root 本地希望存储的地址
systemctl restart docker
systemctl daemon-reload
systemctl restart docker

5、docker 相关命令:

docker info:查看docker默认存储地址等信息;

docker run  -i -t --runtime=nvidia -v /data/ysh/:/mnt tensorflow/tensorflow:latest-gpu /bin/bash:以交互式从docker image环境中生成container
nvidia-docker run  -i -t  tensorflow/tensorflow:latest-gpu /bin/bash
docker run --runtime=nvidia --rm nvidia/cuda:9.0-base nvidia-smi
docker commit -m="has update" -a="ysh" a849572156a7 ysh/tf-pytorch:v2:保存container中得相关修改并另存为新的image
docker save -o /data/ysh/tensorflow-gpu-latest.tar tensorflow/tensorflow:latest-gpu:将docker image打包成tar文件
dockrt load --input  /data/ysh/tensorflow-gpu-latest.tar:加载相关得镜像tar文件
docker exec -i -t  mynginx /bin/bash:以交互式的方式进入mynginx的容器
docker build -t detectron:c2-cuda9-cudnn7 .     ##使用当前目录的 Dockerfile 创建镜像,标签为detectron:c2-cuda9-cudnn7
docker tag 9ae3e8ea7508 ysh/caffe2:v1    ##重命名镜像
docker cp 主机文件  容器id:目录下   ##将主机文件拷贝至容器

docker rm 容器号:删除容器
docker rmi  镜像号:删除镜像时需要先删除镜像创建的所有容器

root@YLZSTP-G5L:~# docker rmi d30768a1df3f
Error response from daemon: conflict: unable to delete d30768a1df3f (must be forced) - image is referenced in multiple repositories
root@YLZSTP-G5L:~# docker rmi -f d30768a1df3f:-f强制删除
在一个镜像的基础上修改后commit生成新的镜像,这时docker rmi -f 原来的镜像id,会出错,不能强制删除有子镜像依赖的镜像;这时通过docker rmi -f 原来的镜像名称可以成功删除、

 

docker的镜像类似于类,docker的容器类似于由镜像创建的对象
docker ps -a:查看容器的情况,号码等信息
docker image ls:查看镜像的情况,号码,tag等信息

在docker hub上创建自己的仓库,create公有或私有仓库后,通过docker命令上传镜像,命名格式:用户名/仓库名:tag名

docker logout

docker login

docker tag dad62b6b4323  857470845/deepo:v1-pytorch-all

docker push 857470845/deepo:v1-pytorch-all:将自己创建得镜像上传到docker hub上;

docker pull sharedcloud/tensorflow-gpu-python27:2GB大小:从docker hub上拖取镜像到本地;

 

安装完后可以进入root权限:

https://blog.csdn.net/eleiza/article/details/70312759

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值