百科不全书之 docker记录

docker记录

  • 1.参考文件
  • 2. Docker简介
    • 与虚拟机的区别
  • 3. 安装Docker
    • 注意 Windows家庭版的要额外设置
  • 4.使用
  • 5.docker与ROS

1.参考文件

参考视频:B站【GeekHour】Docker入门教程: 【GeekHour】30分钟Docker入门教程

在这里插入图片描述
在这里插入图片描述

2. Docker简介

Docker是一个用于构建运行 传送 应用程序的平台。
在这里插入图片描述

与虚拟机的区别

虚拟机使用了一种叫做虚拟化的技术,虚拟化技术可以将物理资源,虚拟成多个逻辑资源的技术。每台虚拟机需要占用硬件资源。
其实Docker只是容器的一种实现,而容器是一种虚拟化技术和虚拟机类似,也是一种独立的环境,可以在这个环境中运行应用程序,和虚拟机不同的是,不需要运行一个完整的操作系统,而是使用宿主机的操作系统。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
镜像:一个只读的模板,可以用来创建容器。
容器:docker的运行实例,提供了一个独立的可移植的环境。可以在这个环境中运行应用程序。
镜像=食谱,容器=做出来的菜。
仓库:Docker仓库是用来存储Docker镜象的地方。最流行和最常用的仓库就是Dockerhub。
Docker有一个特点,容器中的数据不会持久化,如果想持久化容器中的数据,就需要使用逻辑卷,它可以把容器中的目录或者指定路径,映射到宿主机的某一个目录或者位置上,这样就可以将数据保存到宿主机的磁盘上。
Dev Environments: 是一个beta的测试功能,是用来管理开发环境的,可以在这里创建一个开发环境,使用一些代码来配置这个环境,然后可以把这个开发环境共享给项目中的其他开发人员。
Docker Compose: 将互相管理的容器,组合在一起。
在这里插入图片描述

3. 安装Docker

下载网址:https://www.docker.com/products/docker-desktop/
然后安装运行docker
windows电脑使用docker 需要先开启 Hyper-v功能;

注意 Windows家庭版的要额外设置

Windows家庭版没办法直接开启Hyper-v功能,需要新建一个文本文档,输入下面内容之后,点击另存为,设置文件名为:Hyper-v.bat
,保存类型为 所有文件。

pushd "%~dp0"dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hv.txtfor /f %%i in ('findstr /i . hv.txt 2^>nul') do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"del hv.txtDism /online /enable-feature /featurename:Microsoft-Hyper-V -All /LimitAccess /ALLPause

在这里插入图片描述
之后,右键点击文件,以管理员身份运行,之后重启,就能看到已经开启了虚拟化的功能。
在这里插入图片描述
在这里插入图片描述
安装完成之后,在命令行输入 docker version 如果可以看到版本信息,就代表安装成功。只有docker有 client 和 server。如果只能看到client看不到 server 就代表你的docker客户端没有启动,需要启动 docker 客户端。
在这里插入图片描述
如果启动的过程中,一直显示图下的信息。
在这里插入图片描述
需要在终端输入 wsl --update 命令。安装成功之后 输入 wsl --set-default-version 2;重启电脑之后就可以了。

4.使用

容器化:将应用程序打包成容器,然后在容器中运行应用程序的过程。
在这里插入图片描述
Dockerfile:文本文件,包含了指令,用来告诉docker如何构建镜像,类似于makefile.
Play with Docker(PWD):一个在线的Docker操作平台,可以在里面对Docker进行操作和学习,缺点就是国外网站。
进入 https://labs.play-with-docker.com/
然后点击sign,登录之后就可以进行操作了。每次登录会有免费的4小时体验时间,超过4小时之后,需要重新登录。
注册的时候一直卡住,可以试试蓝奏云软件合集-软件分享基地; https://www.vqs.com/article/4425.html

docker pull  geekhour/hello-docker  // 下载镜像
docker images    // 查看镜像
docker run geekhour/hello-docker //运行程序

5.docker与ROS

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/636252.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【智能算法】吉萨金子塔建造算法(GPC)原理及实现

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献 1.背景 2021年,S Harifi等人受到观古代遗迹构造启发,提出了吉萨金子塔建造算法(Giza Pyramids Construction, GPC)。 2.算法原理 2.1算法思想 GPC模拟了古埃…

Python 面向对象——1.基本概念

本章学习链接如下: 基本概念与语法 类(Class):定义了一组对象共有的属性和方法的蓝图。类是创建对象的模板。 对象(Object):类的实例。对象包含实际的数据和操作数据的方法。 属性&#xff0…

unity学习(89)——unity塞满c盘!--删除editor下的log文件

卸了一个视频后强制续命打开详细信息: 这个再往下找也是没用的! 显示隐藏文件夹后!执行如下操作! 30个g! 其中unity占23g editer占了21g 删除C:\Users\王栋林\AppData\Local\Unity\Editor下的log文件 恢复到之前的水…

Android AIDL接口

一.AlDI接口简介 AIDL(Android Interface Definition Language)是一种 IDL 语言,用于生成可以在 Android 设备上两个进程之间进行进程间通信(IPC)的代码。 通过 AIDL,可以在一个进程中获取另一个进程的数据…

详细剖析多线程4----锁策略(八股文/面试常考)

文章目录 前言一、常见锁策略(八股文)1.1乐观锁和悲观锁1.2轻量级锁和重量级锁1.3自旋锁和挂起等待锁1.4普通互斥锁和读写锁1.5公平锁和非公平锁1.6可重入锁和不可重入锁1.7总结 二、synchronized内部原理三、CAS四、JUC(java.util.concurrent) 的常见类4.1Callable 接⼝4.2Ree…

【LLM】LLM API 开发

文章目录 LLM API 开发LLM入门基本概念LLM API使用实名认证创建应用使用API Prompt Engineering思考总结 参考文章 什么是提示工程(Prompt Engineering)? ChatGPT Prompt 最佳指南一 LLM API 开发 LLM入门基本概念 Prompt Prompt 最初是 NL…

嵌入式物联网实战开发笔记-乐鑫ESP32芯片功能对比以及功能选型【doc.yotill.com】

乐鑫ESP32入门到精通项目开发参考百例下载: 链接:https://pan.baidu.com/s/1ATvRnAZvxkev-PJfd3EAPg?pwd4e33 提取码:4e33 2.1 初识 ESP32 ESP32-S3 是一款低功耗的 MCU 系统级芯片 (SoC),支持 2.4 GHz Wi-Fi 和低功耗蓝牙 (…

windows驱动开发-WDM框架(一)

在前面的文章中解释过,NT5.0之后windows确定了新的架构Windows Driver Model (WDM),在Vista之后又推出了Windows Driver Framework(WDF),这两个都属于驱动程序框架,那么它们的之间的关系是怎样的? WDF是对WDM进行的封…

【数据结构(八)下】二叉树经典习题

❣博主主页: 33的博客❣ ▶文章专栏分类: Java从入门到精通◀ 🚚我的代码仓库: 33的代码仓库🚚 🫵🫵🫵关注我带你学更多数据结构的知识 1.前言 在上一篇文章中,博主已经分享了部分二叉树的经典习题&#xf…

安居水站:水站经营秘籍:年入30万不是梦。水站创业指南。

在这个快节奏的社会里,初创企业家们总是在寻找一条明路,以在竞争激烈的市场中立足。为了帮助他们更好地实现这一目标,我根据经验决定制定一份水站经营指导手册。这份手册将详细阐述如何从零起步,如何运营,如何进行市场…

c++11 标准模板(STL)本地化库 - 平面类别(std::collate) - 定义字典序比较和字符串的散列(二)

本地化库 本地环境设施包含字符分类和字符串校对、数值、货币及日期/时间格式化和分析,以及消息取得的国际化支持。本地环境设置控制流 I/O 、正则表达式库和 C 标准库的其他组件的行为。 平面类别 定义字典序比较和字符串的散列 std::collate 类 std::collate 封…