码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 【docker】windows版本安装学习使用


    1.docker在windows上的安装

    首先打开hyper-V,没有该选项的可以参考https://blog.csdn.net/lanxingxing666666/article/details/111354089
    在这里插入图片描述
    之后安装wsl子系统,参考https://docs.microsoft.com/zh-cn/windows/wsl/basic-commands

    wsl --install
    
    • 1

    在之后,进入docker官网,下载安装文件,网址为:https://docs.docker.com/docker-for-windows/install/
    安装完成后检查是否安装成功:

    docker -v
    
    • 1

    在这里插入图片描述

    2.下载ubuntu镜像

    可以从官方网址获得的镜像:https://hub.docker.com/
    下载镜像的命令格式为:

    docker pull [image_name]:[image_tag]
    
    • 1

    运行docker-desktop,待其完全启动后,在命令行中输入

    docker pull ubuntu:20.04
    
    • 1

    在这里插入图片描述
    可以在docker-desktop,或者使用docker images看到我们下载的镜像:
    在这里插入图片描述

    3.建立ubuntu容器

    容器可以理解为docker中的微型虚拟机,建立的命令格式为:docker run,这里:

    docker run -it ubuntu:20.04
    
    • 1

    其中,'-it’的中的‘i’表示持续运行该容器;‘t’表示告诉docker为该容器建立一个标准的命令行终端。
    在这里插入图片描述
    这样我们就进入一个ubuntu系统的“虚拟机”里。可以在里面安装各种软件,配置各种环境,如:

    apt-get update
    apt install net-tools        # ifconfig 
    apt install iputils-ping     # ping
    
    • 1
    • 2
    • 3

    可以使用docker-desk或者docker ps -a 命令查看所有容器:
    在这里插入图片描述

    4.围绕镜像和容器的常用docker命令

    退出并停止docker容器运行:

    exit
    #或者
    docker stop [contain-ID]
    
    • 1
    • 2
    • 3

    启动已存在的docker容器:

    docker start -i [CONTAINER ID]
    #here
    docker start -i 525981fe05a426ba76011cfbb1a050da42811a7e12c1c6f1efbbb1964c95081f
    
    • 1
    • 2
    • 3

    对容器重新命名

    docker rename [OlD CONTAINER ID] [NEW CONTAINER ID]
    #here
    docker rename 525981fe05a426ba76011cfbb1a050da42811a7e12c1c6f1efbbb1964c95081f awei
    #这里名字改成了awei
    
    • 1
    • 2
    • 3
    • 4

    删除容器或者镜像

    docker rm container_id #删除容器
    docker rmi image_id #删除镜像
    
    • 1
    • 2

    在容器与主机中传输文件

    # 宿主机的文件/文件夹 拷贝到docker容器的指定目录中
    docker cp [src_path] [target_container]:[container_path]
     
    # 容器1的文件/文件夹 拷贝到容器2的指定目录中
    docker cp [src_container]:[container_path] [target_container]:[container_path]
     
    # 容器的文件/文件夹 拷贝到宿主机的指定目录中
    docker cp [src_container]:[container_path] [target_path]
    
    #这里我们把Anaconda安装包放入容器awei中
    docker cp D:\edge_download\Anaconda3-2022.05-Linux-x86_64.sh awei:\home\
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    在这里插入图片描述
    将容器封装成镜像

    docker commit [CONTAINER ID] [IMAGE_NAME]:[TAG]
    
    #here
    docker commit awei ubuntu-deep
    
    • 1
    • 2
    • 3
    • 4

    容器与镜像的导入与导出
    docker允许将容器或者奖项进行导入或者导出
    首先可以使用export或import者将容器导入导出:

    #导出容器
    docker export f299f501774c > hangger_server.tar
    #导入容器
    docker import - new_hangger_server < hangger_server.tar
    
    • 1
    • 2
    • 3
    • 4

    也可以使用save或者load将镜像导入导出:

    #导出镜像
    docker save 0fdf2b4c26d3 > hangge_server.tar
    #导入镜像
    docker load < hangge_server.tar
    
    • 1
    • 2
    • 3
    • 4

    两种方式稍有区别,具体可参看:https://blog.csdn.net/qq_44273583/article/details/114387368

    4. windows下docker配置GPU

    需要windows版本21H2以上或者windows11,显卡Pascal架构以上,然后更新最新的wsl2子系统,docker系统20.0以上。
    下载nvidia官方配置好的docker,加启动选项 --gpus all 即可,比如:

    docker run -it --gpus=all --rm nvidia/cuda:11.4.2-base-ubuntu20.04 nvidia-smi
    
    • 1

    由于电脑的系统问题,我并没有配置成功,这里给出一些写的比较好的博客供大家参阅:
    Nvidia官网cuda on wsl说明书:https://docs.nvidia.com/cuda/wsl-user-guide/index.html
    Nvidia-cuda官方Docker镜像库:https://hub.docker.com/r/nvidia/cuda/tags
    微软官网wsl说明书:https://docs.microsoft.com/zh-cn/windows/wsl/basic-commands
    B站博客:https://www.bilibili.com/read/cv14608547/
    CSDN博客1(直接运行命令):https://blog.csdn.net/fleaxin/article/details/108911522
    CSDN博客2:https://blog.csdn.net/dongbox_/article/details/122483636
    CSDN博客3(windows版本问题导致无法链接GPU):
    https://blog.csdn.net/weixin_44121966/article/details/122848667

  • 相关阅读:
    【摸鱼神器】UI库秒变低代码工具——表单篇(二)子控件
    基于Ant Design设计语言的WinForm UI界面库
    各位帅哥美女,微博爬虫用python到底怎么写啊
    No ‘Access-Control-Allow-Origin‘ header is present on the requested resource.
    第5章 网络编程
    【Leetcode刷题Python】516. 最长回文子序列
    arcgis 做统计图时找不到属性字段/字符串字段转化为数值
    百度百科修改审核不过怎么办?修改百科词条的技巧
    android studio打开flutter项目报红
    听GPT 讲Rust源代码--src/librustdoc
  • 原文地址:https://blog.csdn.net/rocking_struggling/article/details/126073339
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号