Docker教程-Windows版

注意事项:
1.如果您不熟悉docker,请参考如下链接,或参考百度

2.如果安装了Windwos版本的docker,VMware可能会使用不了Windows版docker和VM只能使用一个。

如果您使用Windows版本docker后,还想继续使用VMware,请参考如下解决方案

解决方案:

win10版 vmware与hyper-v不兼容,请移除hyper-v角色
1、请移除hyper-v角色。

(1)以管理员身份(win + x)运行命令提示符;
(2)执行命令:bcdedit /set hypervisorlaunchtype off
(3)重启系统,运行vm即可。

2、如果想要恢复hyper启动:
bcdedit /set hypervisorlaunchtype auto

1. 下载安装docker

windows docker containers在哪个目录 docker windows -v_Windows

①.控制台打开查看版本 docker -v

windows docker containers在哪个目录 docker windows -v_docker_02

②.也可以使用编辑器里的终端进行操作

如Visual Studio Code

windows docker containers在哪个目录 docker windows -v_docker_03

2.导出项目依赖

1、安装pipreqs,它可以实现只导出当前项目运行所依赖的包,环境中多余的库就不会导出,在迁移环境时候很少方便。

pip3 install pipreqs

2、进入项目的根目录然后执行下面命令,等待一会就会生成一个requirements.txt文件,里面是项目所依赖的所有库包:

pipreqs ./ --encoding=utf-8

3、在同级路径下可以看到生成的requirements.txt文件,查看文件类似下面的:

# requirements.txt
matplotlib>=3.2.2
numpy>=1.18.5
opencv-python>=4.1.2
pillow
PyYAML>=5.3
scipy>=1.4.1
tensorboard>=2.2
torch>=1.6.0
torchvision>=0.7.0
tqdm>=4.41.0
  1. 编写dockerfile
    (可以使用txt文本编写,保存时去掉 .txt后缀)

示例:

由于基础镜像中将cuda10.0升级为10.1,请选手在构建镜像时,先将之前构建的基础镜像删除重新构建

# 拉取基础镜像,基础镜像基于cuda10.1,基础镜像种已经包含了python3 ,pip3
FROM swr.cn-east-3.myhuaweicloud.com/algorithm-seed/algorithm-base
# 2、执行创建 project文件夹
RUN mkdir /project    
# 3、下面这段命令指的是 将你的代码 放到你构建的镜像 的 project目录下
copy project /project
# 4、由于基础镜像无法覆盖选手代码项目中的全部依赖,所以选手需要将上面执行得到的requirement.txt执行,安装其它依赖
# 4.1、进入到存放requirements.txt 的目录
WORKDIR /project/
# 4.2、执行下载requirements.txt中的依赖
RUN pip3 install -r requirements.txt
# 5、cd 到project主程序目录下
WORKDIR /project/code
# 6、指定容器运行时的动作
CMD ["python","main.py"]

4. 将代码项目放到Dockerfile的同级目录下

示例:

windows docker containers在哪个目录 docker windows -v_Windows_04

5. 进入到存放dockerfile的目录下

windows docker containers在哪个目录 docker windows -v_docker_05

6. 构建镜像

>>> docker build -t test .

创建镜像(注:-t 表示为该镜像起名称,另外,构建命令后面有个英文实心点,表示当前目录。)

# test 指镜像名,这里只做示例,选手请根据要求名称构建镜像

# . 指当前目录下(dockerfile)

开始构建:

windows docker containers在哪个目录 docker windows -v_python_06


构建成功:

windows docker containers在哪个目录 docker windows -v_Windows_07

7. 查看镜像

>>>docker images

8. 运行镜像

>>>docker run test

#启动方式这里只做简单示例

windows docker containers在哪个目录 docker windows -v_docker_08

9. 导出镜像

请注意:一定要使用 docker save 命令来导出镜像

>>> docker save -o test.tar test

# 例如: docker save -o [要保存的文件名] [要保存的镜像] (这里只做示例,名称请按照要求进行命名)

windows docker containers在哪个目录 docker windows -v_Windows_09

  1. 结果提交
    将导出的镜像提交