Docker基本管理和虚拟化

news2024/11/17 11:23:15

一、docker的发展历史

https://www.cnblogs.com/rongba/articles/14782624.htmlicon-default.png?t=N7T8https://www.cnblogs.com/rongba/articles/14782624.html

二、docker的概述

  Docker是一个开源的应用容器引擎,基于go语言开发并遵循了apache2.0协议开源。
  Docker是在Linux容器里运行应用的开源工具,是一种轻量级的“虚拟机”。
  Docker 的容器技术可以在一台主机上轻松为任何应用创建一个轻量级的可移植的自给自足的容器。

  Docker的设计宗旨:封装、发布、部署、运行等生命周期的管理,达到应用组件级别的“一次封装,到处运行”的目的。

三、容器的特点

  • 灵活:即使是最复杂的应用也可以集装箱化。
  • 轻量级:容器利用并共享主机内核。
  • 可互换:可以即时部署更新和升级。
  • 便携式:可以在本地构建,部署到云,并在任何地方运行。
  • 可扩展:可以增加并自动分发容器副本。
  • 可堆叠:可以垂直和即时堆叠服务。

四、docker与虚拟机的区别

特性Docker容器虚拟机
启动速度 秒级分钟级
计算能力损耗几乎无损耗 50%左右
性能接近原生
系统支持量(单机)上千个几十个
隔离性资源隔离/限制完全隔离

五、容器技术的分类

  • docker
  • podmandocker——相似 OCI  redhat
  • K8s
  • container——docker核心组件之一
  • LXC——linux容器化技术
  • crio——轻量级,专门用于 k8s
  • apche mesos——容器编排平台

六、容器的重要技术

  docker本质就是宿主机的一个进程,docker是通过namespace实现资源隔离,通过cgroup实现资源限制,通过写时复制技术(copy-on-write)实现了高效的文件操作

七、namespace的六项隔离

namespace系统调用参数隔离内容
UTSCLONE_NEWUTS主机名与域名
IPCCLONE_NEWWIPC信号量、消息队列和共享内存
PIDCLONE_NEWPID进程编号(重点)
NETWORKCLONE_NEWNET网络设备、网络栈、端口等(重点)
MOUNTCLONE_NEWNS挂载点(文件系统)
USERCLONE_NEWUSER用户和用户组(3.8以后的内核才支持〉

八、docker的核心概念

  • 镜像

    docker的镜像是创建容器的基础,类似虚拟机的快照,可以理解为一个面向 docker容器引擎的只读模板。

  • 容器

    Docker的容器是从镜像创建的运行实例,它可以被启动、停止和删除。所创建的每一个容器都是相互隔离、互不可见,以保证平台的安全性。

  • 仓库

    Docker仓库是用来集中保存镜像的地方,当创建了自己的镜像之后,可以使用push命令将它上传到公有仓库(Public)或者私有仓库(Private)。当下次要在另外一台机器上使用这个镜像时,只需从仓库获取。

    Docker 的镜像、容器、日志等内容全部都默认存储在/var/lib/docker

九、docker的安装

  9.1 安装依赖包

安装依赖包
yum install -y yum-utils device-mapper-persistent-data lvm2 

yum-utils:提供了 yum-config-manager 工具。


device mapper: 是Linux内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。


device mapper:存储驱动程序需要 device-mapper-persistent-data 和 lvm2。 

  9.2 安装阿里云镜像源

设置阿里云镜像源
yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 

  9.3 安装docker-ce

yum install -y docker-ce docker-ce-cli containerd.io

  9.4 启动docker

systemctl start docker.service
systemctl enable docker.service 

  9.5 查看docker版本信息

查看 docker 版本信息
docker version

  9.6 查看docker信息

docker 信息查看
docker info  

  9.7 搜索nginx镜像

搜索镜像
格式:docker search 关键字

  9.8 获取镜像nginx

获取镜像
格式:docker pull 仓库名称[:标签]

  9.9 镜像加速下载

阿里云登录 - 欢迎登录阿里云,安全稳定的云计算服务平台欢迎登录阿里云,全球领先的云计算及人工智能科技公司,阿里云为200多个国家和地区的企业、开发者和政府机构提供云计算基础服务及解决方案。阿里云云计算、安全、大数据、人工智能、企业应用、物联网等云计算服务。icon-default.png?t=N7T8https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

 9.10 创建docker文件夹并配置相关文件

mkdir -p /etc/docker


tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://ae3f5qei.mirror.aliyuncs.com"]
}
EOF


systemctl daemon-reload


systemctl restart docker

  9.11 查看镜像

查看下载的镜像文件信息
cat /var/lib/docker/image/overlay2/repositories.json

#查看下载到本地的所有镜像
docker images

REPOSITORY:镜像属于的仓库


TAG:镜像的标签信息,标记同一个仓库中的不同镜像


IMAGE ID:镜像的唯一ID 号,唯一标识一个镜像


CREATED:镜像创建时间;


VIRTUAL SIZE:镜像大小

9.12 根据镜像的唯一标识 ID 号,获取镜像详细信息

  用docker images来查看并获取ID号,然后用docker inspect ID查看详细信息!

  注意:这里的ID号用自己的,下列为举例使用

格式:docker inspect 镜像ID号
docker inspect ae2feff98a0c

  9.13 为本地镜像添加新的标签,同时删除镜像

为本地的镜像添加新的标签
格式:docker tag 名称:[标签] 新名称:[新标签]

删除镜像

docker rmi 仓库名称:标签

docker rmi 镜像ID号

  9.14 存出镜像

存出镜像:将镜像保存成为本地文件
格式:docker save -o 存储文件名 存储的镜像

  9.15 存出nginx文件

载入镜像:将镜像文件导入到镜像库中
格式:
docker load < 存出的文件

docker load -i 存出的文件

  9.16 添加新的标签同时登录公共仓库

    上传镜像

十、虚拟化

  10.1 虚拟化概述

    虚拟化:将应用程序和系统内核资源进行解耦,以操作系统级别进行隔离,目的是提高资源利用率

  10.2 虚拟化架构

  • 寄居架构

    本机(真实操作系统)--->虚拟化产品--->虚拟化操作系统/软件

  • 源生架构

    裸金属(服务器)--->虚拟化产品

  10.3 核心组件

    两大核心组件:QEMU、KVM

  10.4 虚拟化类型

    在一个操作系统内,模拟多个操作系统,以软件的方式模拟物理设备的功能

  10.5 虚拟化产品对比

  1. 仿真虚拟化:对系统硬件没有要求,性能要求最低

  2. 半虚拟化:虚拟机可以使用真机

  3. 全虚拟化:直接使用物理硬件,性能要求高

  • vmware:客户端
 vmware workstation:个人在windows安装的虚拟机
​
 vmware Fusion MAC
  • vmware服务端 exsi VMware vsphere 裸金属 全虚拟化,直接使用物理硬件,性能高 客户端连接 VMware vsphere 现企业,网页端连接 VMware vsphere
  • KVM、openstack linux环境虚拟机 私有云环境 KVM基于内核的虚拟机主机
  • 半虚拟化:reh1 5 自带的xen(虚拟机监视器) 微软:Microsoft Hyper-v virtualBOX 7.0--->虚拟盒子 cirix Hypervisor

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

B站评论无限点赞

网盘自动获取 链接&#xff1a;https://pan.baidu.com/s/1lpzKPim76qettahxvxtjaQ?pwd0b8x 提取码&#xff1a;0b8x

申请泛域名证书步骤

泛域名证书的广泛应用范围&#xff1a; 泛域名证书不同于普通的单域名数字证书和多域名数字证书&#xff0c;可以一次以一张证书对应无限多的域名&#xff0c;在功能性和方便性上远优于一般证书。 单域名证书顾名思义&#xff0c;一张证书只对应一个独立域名&#xff0c;多域…

页面分页打印,echarts图解决办法;生成PDF

1&#xff1a;echarts图片前端打印不是很完美&#xff0c;对于VUE2.0版本不是很有好 2&#xff1a;360浏览器不支持vue的最新版本的插件vue3-print-nb 3&#xff1a;vue-print-nb 可以打印带有echarts 一页内容&#xff0c;并且还存在bug&#xff0c;第一次点击打印没有&…

Barnes-Hut t-SNE:大规模数据的高效降维算法

在数据科学和分析中&#xff0c;理解高维数据集中的底层模式是至关重要的。t-SNE已成为高维数据可视化的有力工具。它通过将数据投射到一个较低维度的空间&#xff0c;提供了对数据结构的详细洞察。但是随着数据集的增长&#xff0c;标准的t-SNE算法在计算有些困难&#xff0c;…

Laravel 6 - 第十五章 验证器

​ 文章目录 Laravel 6 - 第一章 简介 Laravel 6 - 第二章 项目搭建 Laravel 6 - 第三章 文件夹结构 Laravel 6 - 第四章 生命周期 Laravel 6 - 第五章 控制反转和依赖注入 Laravel 6 - 第六章 服务容器 Laravel 6 - 第七章 服务提供者 Laravel 6 - 第八章 门面 Laravel 6 - …

数据结构(七)---树

目录 一.树的基本概念 二.树的性质 三.二叉树 1.二叉树的基本概念 2.特殊的二叉树 &#xff08;1&#xff09;满二叉树 &#xff08;2&#xff09;完全二叉树 &#xff08;3&#xff09;二叉排序树 &#xff08;4&#xff09;平衡二叉树 3.二叉树的性质 4.完全二叉树…

SpringBoot测试报错:Failed to load ApplicationContext(pom文件加载完,版本号依然标红)

这里写自定义目录标题 问题描述解决方案 问题描述 在快速入门Mybatis的程序中 加载完Maven依赖之后 想执行下面的测试程序 结果报错: Unable to instantiate org.mybatis.spring.boot.autoconfigure.MybatisDependsOnDatabaseInitializationDetector [org.springframework.…

WEB攻防-ASP中间件IIS文件上传解析安全漏洞

漏洞原理&#xff1a; 基于文件 IIS6.0默认不解析;号后面的内容&#xff0c;例如1.asp;.jpg会当成1.asp解析&#xff0c;相当于分号截断。 基于文件夹 IIS6.0会将/*.asp/文件夹下的文件当成asp解析。 案例&#xff1a; 写一个木马文件&#xff0c;并改为jpg后缀 GIF89agif8…

APP自定义身份证相机(Android +iOS)

基本上同时兼容安卓和苹果的插件都需要付费&#xff0c;这里我找了2个好用的免费插件 1.仅支持安卓&#xff1a;自定义身份证相机&#xff08;支持蒙版自定义&#xff09;&#xff0c;内置蒙版&#xff0c;照片预览&#xff0c;身份证裁剪 - DCloud 插件市场、 2.支持iOS(已测…

MySQL简解

文章目录 1. MySQL框架2. 执行流程2.1. 连接池&#xff1a;2.2. SQL 前端(SEVER)2.2.0. 查询缓存2.2.1. SQL 接口2.2.2. SQL 解析器2.2.3. SQL 执行器2.2.4. INNODB 中读写操作 2.3. 数据的保存形式 3.其他重要概念3.1. 索引3.1.1. 简单概念3.1.2. 索引优化&#xff1a;1. Usin…

用这个方法,让你轻松从零搭建产品知识库

在市场竞争日益激烈的今天&#xff0c;一个系统化的产品知识库对于企业的重要性不言而喻。它不仅可以帮助团队成员快速掌握产品信息&#xff0c;提升服务效率&#xff0c;还能为客户提供及时准确的产品支持。那么&#xff0c;怎样才能从零开始&#xff0c;轻松搭建起一个合适的…

计算机服务器中了devicdata勒索病毒怎么处理,devicdata勒索病毒解密工具流程

随着网络技术的不断发展与应用&#xff0c;越来越多的企业离不开网络&#xff0c;通过网络可以开展各项工作业务&#xff0c;网络也为企业的生产运营提供各类极大便利&#xff0c;大大提高了生产效率&#xff0c;但网络在为企业提供便利的同时&#xff0c;也为企业的数据安全带…

html网页在展示时,监听网络是否断网,如果断网页面暂停点击响应

序言&#xff1a; 集合百家之所长&#xff0c;方著此篇文章&#xff0c;废话少说&#xff0c;直接上代码&#xff0c;找好你的测试网页&#xff0c;进行配置&#xff0c;然后复制粘贴代码&#xff0c;就可以了。 1.css文件内容 #newbody{display: none;width: 100%;height: 9…

Linux系统-服务器硬件及RAID配置

目录 一.服务器 1.服务器与普通计算机的区别 2.功能 3.分类&#xff08;按照产品形态分&#xff09; 4.架构&#xff08;按照指令集类型&#xff09; 5.相关指令 5.1.查看服务器CPU的信息 5.2.查看服务器内存的信息 二.RAID磁盘阵列&#xff08;Redundant Array …

2024.04.24记录所解决的问题

一解决了使用VM虚拟机作为dubbo-admin服务器提供者在浏览器访问失败问题 一开始在服务器上面即使运行了zookeeper和dubbo-admin容器都没有访问出dubbo-admin的界面管理器。查看了其他映射端口以及注册中心的地址等等其他参数&#xff0c;都不行&#xff0c;然后就一直没有去处…

基于小程序实现的查寝打卡系统

作者主页&#xff1a;Java码库 主营内容&#xff1a;SpringBoot、Vue、SSM、HLMT、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、小程序、安卓app等设计与开发。 收藏点赞不迷路 关注作者有好处 文末获取源码 技术选型 【后端】&#xff1a;Java 【框架】&#xff1a;ssm 【…

面试ssss

响应式布局 响应式布局是一种设计和开发网页的方法&#xff0c;使网页能够适应不同的设备和屏幕尺寸&#xff0c;提供更好的用户体验。它通过使用媒体查询&#xff08;Media Queries&#xff09;和弹性布局&#xff08;Flexbox&#xff09;等技术&#xff0c;根据设备的特性和…

【Django】django.core.exceptions.AppRegistryNotReady: Apps aren‘t loaded yet.

其中django后台manage.py入口程序报错&#xff0c;检索很多问题解决方案&#xff0c;这里记录下个人问题原因 1.django启动异常问题详情 django.core.exceptions.AppRegistryNotReady: Apps aren’t loaded yet. 2.问题原因 Python第三方包安装版本不一致或缺少依赖包&…

cdo 修改 calendar 为标准的格式

使用ncl脚本时出现警告&#xff1a;day_of_year: illegal calendar proleptic_gregorian 其原因是读取的降水nc文件是我手动合并生成&#xff0c;所以时间的calendar不是很标准&#xff0c;数据信息如下所示&#xff0c;可以发现Calendar是proleptic_gregorian&#xff0c;这…

互联网盲盒小程序模式,入局市场的渠道选择

近年来&#xff0c;盲盒吸引了无数的消费者&#xff0c;还打造了“万物皆可盲盒”的市场&#xff0c;成为了当下拥有巨大发展前景的行业之一&#xff01;当然&#xff0c;盲盒市场除了吸引消费者外&#xff0c;还获得了众多商家和创业者的青睐。 盲盒作为一种娱乐消费方式&…