windows下docker安装paddlepaddle并生成离线映像文件

495 阅读4分钟

这是我参与8月更文挑战的第1天,活动详情查看: 8月更文挑战

1.检查电脑是否打开虚拟化

在这里插入图片描述

2.安装docker软件

2.1 自行下载docker软件,win7、8以及win10家庭版需下载docker Toolbox。 官网下载地址:docs.docker.com/toolbox/too… 阿里云下载地址:mirrors.aliyun.com/docker-tool… 百度云:提取码:9q0d pan.baidu.com/s/1TmqhpWL8… 2.2 安装流程(全打勾) 在这里插入图片描述 后面全部默认就好 一直点点点即可。 最后在桌面会生成三个软件。如下: 在这里插入图片描述 此处会提醒下载boot2docker,直接等待下载,或将网址复制到浏览器,进行下载即可。下载之后,将其移动到如下位置 百度云盘:提取码:8s88 pan.baidu.com/s/17WSsNAA_…

在这里插入图片描述 重新启动 Docker Quickstart Terminal 出现如下小鲸鱼图标,即为安装成功。 在这里插入图片描述

3.制作Dockerfile

1.创建Dockerfile 找到下载的docker Toolbox文件夹,在其内部创建一个Dockerfile文件夹。如下图所示: 在这里插入图片描述 2.vim dockerfile(创建dockerfile文件)此时在新建的Dokcerfile文件夹新建一个名为dockerfile的文本(一定要切换到对应目录下进行dockerfile文件的创建),如下图所示: 在这里插入图片描述

3.创建dockerfile的具体内容(在dockerfile内输入以下命令) FROM python:3.7 RUN pip install XX(安装所需软件) COPY 文件路径 /映像中的路径/ (将文件copy到docker中) WORKDIR /映像中的路径 (文件所在位置) CMD python app.py (执行文件)

此处为创建的dockerfile:在这里插入图片描述 4.创建镜像 docker build -t adr/adr_test .(后为文件名 注意文件名后加空格加点)

在这里插入图片描述

4.创建过程出现的各种问题

在创建镜像文件的过程中,会出现各种bug,此处列举几种常见的bug: (1)此处为没有设置具体的python版本: 在这里插入图片描述 (2)此处为缺少visual studio文件,下载如下链接的文件即可。 百度云盘:提取码:dkrm pan.baidu.com/s/1QgXdI-2K… 在这里插入图片描述 (3)出现Read time out为超时下载:在pip和install添加--default-timeout=100 同时注意添加国内映像网站(格式 RUN pip --default-timeout=100 install paddlepaddle -i pypi.tuna.tsinghua.edu.cn/simple) 国内常用映像网站;

中国科技大学:pypi.mirrors.ustc.edu.cn/simple/

清华大学:pypi.tuna.tsinghua.edu.cn/simple/

豆瓣:pypi.douban.com/simple

在这里插入图片描述 (4)如果py文件中有读取文件,可能会出现如下情况(Missing optional dependency ‘xlrd’):同时直接pip 不行且显示已安装其他版本,将其他版本卸载后,pip也不行。 在这里插入图片描述 尝试很多方式都不行之后,直接在dockerfile文件中pip,则安装成功。 在这里插入图片描述 (5)此处一定要注意读取文件所在的位置,不然docker内可能找不到所需读取的文件。在这里插入图片描述

此处建议在制作dockerfile的过程中,将所需要读取的文件copy到docker中。 在这里插入图片描述 在这里插入图片描述 (6)在运行过程中,如果没有在dockerfile中hub lac,则映像文件导出之后,其他docker内运行映像文件,仍然需要联网下载Lac模型,无法达到联网离线操作。所以,在制作dockerfile文件时,一定要将用到的所有需要联网的模型安装好!!!在这里插入图片描述 此处在制作映像文件的过程中,即将需要的lac模型安装好了,下次运行映像文件则不需要安装任何模型了。在这里插入图片描述

5.运行容器 docker run adr/adr_test 如若出现此步,则镜像文件创建成功,即可运行镜像文件。

在这里插入图片描述 如若不知道所创建镜像文件的名字,可以输入docker images 查看创建的镜像文件。 在这里插入图片描述

运行成功!在这里插入图片描述

5.保存映像文件以及离线传输

6.保存映像文件 docker save -o 保存名字.tar 映像文件名字 此时可将映像文件从docker保存到主机中。 在这里插入图片描述 7.导入映像文件(在不同的docker中进行传输文件以及离线导入时,将映像文件拷贝到其他电脑上,再load即可将映像文件导入到docker中) docker load -i 保存名字.tar 导入成功! 在这里插入图片描述 如若对映像文件进行修改,直接docker build -t 原映像文件名字 此时docker会只对修改的部分进行更改,其余部分并不会进行修改!

到此,docker安装、paddlepaddle/paddlehub/lac模型下载、docker离线传输文件的目的就达成啦!!!