Docker在windows下使用教程,通过Dockerfile创建镜像/容器,以YOLO系列为例

这篇具有很好参考价值的文章主要介绍了Docker在windows下使用教程,通过Dockerfile创建镜像/容器,以YOLO系列为例。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一 、环境准备

1、Docker Desktop

 通过可视化界面将极大的降低学习难度。

 1.1、Docker Desktop下载

 下载地址:Docker Desktop: The #1 Containerization Tool for Developers | Docker

docker windows镜像,docker,容器,YOLO,windows

应当是这个界面,选择下载即可

1.2、下载完成后需打开window自带的虚拟机

 docker windows镜像,docker,容器,YOLO,windows

 docker windows镜像,docker,容器,YOLO,windows

docker windows镜像,docker,容器,YOLO,windows docker windows镜像,docker,容器,YOLO,windows

将Hyper-V勾选即打开,勾选后需重启。 

1.3、下载WSL,由于是在windows下进行打包,而docker使用的是linux内核,故需要下载WSL 

安装详见: 安装 WSL | Microsoft Learn

1.4、若安装成功,应出现如下界面:

 docker windows镜像,docker,容器,YOLO,windows

注意:刚下载好没有容器是对的,因为还没有创建 

 2、VScode: 通过VScode创建Dockerfile

假设你现在已经拥有了VScode并且可以使用它

2.1、创建Dockerfile文件

我更推荐直接在VScode中创建

2.1.1、打开工程主路径,即该文件夹下包括你所有的工程代码,在该路径下创建Dockerfile

docker windows镜像,docker,容器,YOLO,windows如此创建

2.1.2、编辑Dockerfile文件

FROM python:3.10-slim  #使用python基础镜像
WORKDIR workspace  #创建在镜像/容器内代码的地址
COPY . .   #将物理电脑这个文件夹内的所有代码复制到镜像的workspace内
RUN pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
     #安装代码运行所需环境
RUN pip install opencv-python-headless -i https://pypi.tuna.tsinghua.edu.cn/simple
     #yolo系列会报一个有关so的错误,下载这个即可
CMD ["python3","val.py"]  #创建命令

注意,workspace十分重要,不要在WORKDIR这一行内使用任何Windows路径,因为容器内为linux路径,两者混用将会产生错误。

3、通过创建的Dockerfile创建镜像

3.1、打开命令行端口,到达工程代码所在主路径

docker windows镜像,docker,容器,YOLO,windows

通过指令创建镜像:

docker windows镜像,docker,容器,YOLO,windows

通过指令由镜像创建容器/由DockerdDesktop创建容器

由指令创建:docker run -itd --name name-you-want-container -p 8899:80 name-you-want /bin/bash

由DeskTop创建:

docker windows镜像,docker,容器,YOLO,windows

docker windows镜像,docker,容器,YOLO,windows

点击run创建容器 

 docker windows镜像,docker,容器,YOLO,windows

可以看到代码已经存入至容器内,并且由于在创建Dockerfile时已经内置了CMD,所以在创建容器时会自动跑代码

若能跑出结果,则说明正确,若是出现某些代码上的bug,修一下就好了。

3.2、打包镜像

导出镜像:

docker export -o busybox2.tar busybox2

 导入镜像:

docker import busybox2.tar busybox2:test #:后的test可改为其他词语,相当于一个特殊的标签

验证导出的镜像能不能用

docker run -it busybox2:test sh

以我的为例,该句代码应为:文章来源地址https://www.toymoban.com/news/detail-755351.html

docker run -it 我的镜像名:test python3 workspace/val.py

到了这里,关于Docker在windows下使用教程,通过Dockerfile创建镜像/容器,以YOLO系列为例的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Docker】初识 Docker,Docker 基本命令的使用,Dockerfile 自定义镜像的创建

    在部署大型项目时,常常面临多组件、复杂的依赖关系和不同环境之间的差异,这些因素可能导致以下问题: 复杂的依赖关系: 由于项目组件众多,各个组件之间的依赖关系变得复杂,容易出现版本不匹配或兼容性问题。 兼容性问题: 项目在不同的环境中可能会遇到兼容性

    2024年02月05日
    浏览(61)
  • SpringBoot项目部署(Docker)——通过Dockerfile将打包好的jar包创建成镜像 & 在IDEA中配置docker,一键启动容器 & 用swagger进行测试

    1.Dockerfile命令初识,CMD…; 2.idea配置docker,图形化界面; 3.编写Dockerfile把jar包制作成镜像,并用idea一键生成和启动容器; 4.在Linux中测试,在宿主机用swagger进行测试; SpringBoot项目部署(jar包)——项目用maven打包成jar包 windows + Linux平台运行 Linux安装java 遇到的问题 Docker是一

    2024年02月05日
    浏览(52)
  • 【云原生】Docker镜像的创建 Dockerfile 多阶段构建原理和使用场景

    创建镜像有三种方法,分别为【基于已有镜像创建】、【基于本地模板创建】以及【基于Dockerfile创建】。 (1)首先启动一个镜像,在容器里做修改  docker run -it --name web centos:7 /bin/bash     #启动容器  ​  yum install -y epel-release  #安装epel源  yum install -y nginx         #安装ng

    2024年02月12日
    浏览(54)
  • 通过dockerfile创建jar镜像 + 自动化脚本启动

    dockerFile(里面包含向容器添加文件,创建文件夹,启动命令等关键,可以根据实际灵活运用):  文件位置:    命令流程:  可根据项目进行微调  遇到坑: linux下执行shell脚本报错,大概率是文本在win下编辑复制过去的,由于存在linux不支持的换行符等,导致脚本无法执

    2024年02月07日
    浏览(53)
  • Docker容器:docker镜像的创建及dockerfile

    创建镜像有三种方法:基于现有镜像创建、基于本地模板创建及基于dockerfile创建 1.1 启动镜像 1.2 生成新镜像 2.1 OPENVZ 下载模板 2.2 导入容器生成镜像 3.1 dockerfile结构及分层 (1)dockerfile结构大致分为4个部分 基础镜像信息 维护者信息 镜像操作指令 容器启动时执行指令 Dockerfil

    2024年02月11日
    浏览(57)
  • 【云原生】Docker镜像的创建,Dockerfile

    创建镜像有三种方法,分别为【基于已有镜像创建】、【基于本地模板创建】以及【基于Dockerfile创建】。  通过导入操作系统模板文件可以生成镜像,模板可以从OPENVZ 开源项目下载,下载地址为:   openvz.org/ Download/template/precreated  联合文件系统(UnionFS )  Union文件系统是

    2024年02月15日
    浏览(50)
  • Docker镜像的创建方法及Dockerfile案例

    Dockerfile结构大致分为四个部分: 基础镜像信息 、 维护者信息 、 镜像操作指令 和 容器启动时执行指令 Dockerfile是一个文本文件,其内包含了一条条的指令(Instruction),每一条指令构建一层,因此每一条指令的内容,就是描述该层应当如何构建。有了Dockerfile,当我们需要定制

    2024年02月09日
    浏览(45)
  • docker 镜像的创建dockerfile 和数据卷

    基于现有的镜像创建镜像 docker commit 基于模板创建镜像 模板可以从OPENVZ开源项目下载 基于dockerfile创建 Docker镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数(如匿名卷、环境变量、用户等)

    2024年02月09日
    浏览(42)
  • Docker 的数据管理与Dockerfile 镜像的创建

    ------------------Docker 的数据管理--------------------- 管理 Docker 容器中数据主要有两种方式:数据卷(Data Volumes)和数据卷容器(DataVolumes Containers)。 1.数据卷 数据卷是一个供容器使用的特殊目录,位于容器中。可将宿主机的目录挂载到数据卷上,对数据卷的修改操作立刻可见

    2024年02月07日
    浏览(39)
  • Docker容器:docker数据管理、镜像的创建及dockerfile案例

    因为数据写入后如果停止了容器,再开启数据就会消失,使用数据管理的数据卷挂载,实现了数据的持久化,重启数据还会存在;还有一种方式,容器之间共享文件即相当于有个备份,也会解决停止容器后数据消失的问题。 管理 Docker 容器中数据主要有两种方式:数据卷(

    2024年02月12日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包