在centos7中使用docker安装TensorFlow,并添加额外的包
1.安装docker
curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
安装完后查看是否安装成功
docker version
启动docker,并运行hello-world镜像,看docker是否安装成功
systemctl start docker
docker run hello-world #运行/下载hello-world镜像进行测试
docker images #查看docker镜像
配置阿里云镜像加速,依次运行下列代码(4个)
sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": ["https://tu1w9t9y.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker
2.docker拉取镜像,并形成tar包
(1)首先找到你需要基础镜像,拉取
这里我拉取的是dlib基础镜像,也可以到docker hub官网上拉取TensorFlow基础镜像
docker pull orgoro/dlib-opencv-python #docker拉取docker hub仓库中的镜像
docker images #查看docker镜像,看看镜像是否拉取成功
(2)进入到镜像中,添加你所需要的包
docker run -it dlibcvpandas:v1 #运行镜像orgoro/dlib-opencv-python
#要是运行进入不了就用这个命令:docker run -it dlibcvpandas:v1 /bin/bash
pip install scipy #安装scipy包
python #进入python中import包是否安装成功
import scipy #查看导包是否成功
from imutils import face_utils #导包失败则pip安装
(3)保存修改后的镜像到本地tar包
docker container ls -a #查看刚刚运行的容器ID
docker commit c144b6b43cfe newdlibcvpandas:v2 #提交新镜像
docker images #查看新镜像
docker save -o /home/dockertar/newdlibcvpandas.tar newdlibcvpandas:v2 #保存镜像到本地
注释:
docker commit 容器id 要创建的目标镜像名:[标签名] (所以需要先查看容器ID)
docker save -o tar包的文件位置 镜像名称:[标签名]
最后附上docker快速入门总结https://blog.csdn.net/huangjhai/article/details/118854733
3.将tar包转成镜像,添加相应的包之后,又转成tar包
3.1使用命令加载tar包,转成镜像
docker load -i 172.20.5.56_5000_pytorch_pytorch_lrh-fengjf_ms_v2.tar #加载
docker images #查看镜像是否加载成功
docker run -it 63966dd45840 #进入到镜像中
3.2进入到镜像中后,使用pyhon命令看哪些包没有安装,确定没有安装的包再退出python环境,安装相应的包。
如上图所示,facenet_pytorch已经成功安装。
3.3保存修改后的镜像到本地tar包