0%

Ubuntu16.04 通过docker使用caffe

实验室给的一个小任务要训练一个caffe模型,但是询问以后发现实验室服务器上居然没有安装caffe(caffe真的这么少人用吗?!),于是需要在学长的电脑上配置caffe环境,但可能这位学长平时不太整机子,上面的环境有点乱,配置了一下午多也没配好,后来干脆用docker了,docker配置真的很方便!因为nvidia-docker已经被废弃,所以使用的是nvidia-docker2。(正常安装可以看之前的Ubuntu16-04-编译安装caffe)

这里忽略了nvidia驱动的安装。

安装docker

1
2
3
4
5
6
7
8
9
10
# step 1: 安装必要的一些系统工具
sudo apt-get update
sudo apt-get -y install apt-transport-https ca-certificates curl software-properties-common
# step 2: 安装GPG证书
curl -fsSL http://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
# Step 3: 写入软件源信息
sudo add-apt-repository "deb [arch=amd64] http://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
# Step 4: 更新并安装 Docker-CE
sudo apt-get -y update
sudo apt-get -y install docker-ce

安装nvidia-docker2

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# 清理以前的。If you have nvidia-docker 1.0 installed: we need to remove it and all existing GPU containers
sudo docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
sudo apt-get purge -y nvidia-docker
sudo apt autoremove

# 执行命令。Add the package repositories
# command 1
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | \
sudo apt-key add -

# command 2
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)

# command 3
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | \
sudo tee /etc/apt/sources.list.d/nvidia-docker.list
sudo apt-get update

# 正式安装。Install nvidia-docker2 and reload the Docker daemon configuration
sudo apt-get install -y nvidia-docker2
sudo pkill -SIGHUP dockerd

# 测试一下。 Test nvidia-smi with the latest official CUDA image
sudo docker run --runtime=nvidia --rm nvidia/cuda nvidia-smi

如果正常出现nvidia-smi则安装成功

docker image

直接运行

1
sudo docker run -ti bvlc/caffe:cpu caffe --version

更多选项

user (-u), current directory, and volumes (-w and -v)

1
docker run --rm -u $(id -u):$(id -g) -v $(pwd):$(pwd) -w $(pwd) bvlc/caffe:cpu caffe train --solver=example_solver.prototxt

bash / ipython

1
docker run-ti bvlc/caffe:cpu ipython

参考


欢迎关注我的其它发布渠道