一:Windows下的操作:
1.首先因为Windows系统下的cmd不支持docker命令,所以我们需要安装一个软件(Docker desktop for windows)来使我们能够在本地完成开发之后将代码用终端中的docker进行打包传入Linux。
安装地址:
下载完成之后默认安装就可以,直到出现docker desktop for windows提示你输入账号登陆的画面,我们可以使用GitHub的账号和谷歌账号进行登录,然后软件就会切入这个画面啦。
我们可以在Windows终端使用docker images,如果出现这个画面就是docker安装成功。
2.开始我们的部署操作,首先需要打开我们的代码工程,创建任意英文名字的文本文件例如(Dockerfile),此文本文件我们将用于我们后续创建镜像,内容为:
# 使用官方的 Python 运行时作为基础镜像 FROM python:3.8 # 设置工作目录 WORKDIR /app # 将当前目录中的内容复制到容器的 /app 目录中 COPY . /app # 安装所需的 Python 依赖项 RUN pip install -r requirements.txt # 在容器启动时运行的命令 CMD ["python", "train.py"] RUN pip install torch==1.7.0+cpu torchvision==0.8.1+cpu torchaudio==0.7.0 -f https://download.pytorch.org/whl/torch_stable.html (因为本次记录是部署至VMware下的Linux系统,虚拟机下无法使用GPU加速,所以安装的torch为cpu版本,实际场景下肯定是GPU版本的torch,大家请自行修改安装命令)
3.进入我们Dockerfile文件所在路径,打开Windows终端开始创建我们的docker镜像,输入docker build -t 镜像名字,例如docker build -t yolov5 .
4.docker images展示我们的镜像,看是否创建成功,成功则是图内所示,失败自行检查,重新构建镜像。
5.创建完镜像我们可以通过docker run -d 启动yolov5_2
6.因为yolov5工程代码已经在容器内,所以我们下一步操作是将这个容器打包传给Linux,如何实现呢:
6.1:通过docker save -o yolov5_2.tar yolov5_2将容器内的代码保存为成压缩包,如果不指定路径,压缩包就会被放在你终端所在的当前文件夹下。
6.3:下面我们进行传输压缩包,可以使用scp命令,ssh命令,如果想要简便可以使用WinXP,Filezila等传输工具,这里我使用的是Filezila,Filezila的使用说明可以参考CSDN其他博主的文章,好学易懂。
二:Vmware中Linux下的操作:
(因为压缩包太大,所以我就不再操作,这里就用第一次的压缩记录作为截图)
1.打开VMware中Linux终端,输入docker load -i yolov5_2.tar进行解压缩,解压过程会很慢,耐心等待。
2.解压缩完后,docker ps -a展示一下我们的镜像有无yolov5_2。
3.docker start yolov5启动后我们直接docker run -it yolov5 /bin/bash,然后就进入到容器的交互终端里了,现在我们就可以进行训练和推理了,运行前检查自己依赖包是否齐全。
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! 结束