docker技术

zhangquan-yw zhangquan-yw     2023-04-01     335

关键词:

Docker技术

制作人:全心全意

Docker概述
  Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器是完全使用沙盒机制,相互之间不会有任何接口。几乎没有性能开销,可以很容易地在机器和数据中心运行。最重要的是它不依赖于任何语言、框架或包装系统
  注:沙盒也叫沙箱,英文是sandbox。在计算机领域指一种虚拟技术,且所用于计算机安全技术,安全软件可以让病毒软件在沙盒中运行,如果含有恶意行为,则禁止程序的进一步运行,从而不会对系统造成任何损害。

  Docker是dotCloud公司开源的一个基于LXC的高级容器引擎,源代码托管在Github上,基于go语言并遵从Apache2.0协议开源。

注意:目前,windows环境下,也支持docker运行

扩展:LXC是Linux Container的简写。Linux Container容器是一种内核虚拟化技术,可以提供轻量级的虚拟化,以便隔离进程和资源,而且不需要提供指令解释机制以及全虚拟化的其它复杂性。主要通过来自kernel的namespace实现每个用户实例之间的相互隔离,通过cgroup实现对资源的配额和度量。

官方网站:https://www.docker.com

源码网址:https://github.com/docker/docker

 

docker容器技术和虚拟化技术对比

  相同点:docker容器技术和虚拟机技术,都是虚拟化技术。

  技术图片

  docker相对于虚拟机,少了虚拟机操作系统这一层,所有docker效率比虚拟机高

 

docker架构图

技术图片

 

Image和Container的关系:Image可以理解为一个系统镜像,Container是image在运行时的一个状态。如果拿虚拟机做一个比喻的话,Image就是关机状态下的磁盘文件,Container就是虚拟机运行时的磁盘文件,包括内存数据。

 

dockerhub:dockerhub是docker官方的镜像存储站点,其中提供了很多常用的镜像供用户下载,如ubuntu、centos等系统镜像。通过dockerhub用户也可以发布自己的docker镜像,为此用户需要注册一个账号,在网站上创建一个docker仓库。

 

docker的特性

  文件系统隔离:每个进程容器运行在一个完全独立的根文件系统里。

  资源隔离:系统资源,像CPU和内存等可以分配到不同的容器中,使用cgroup

  网络隔离:每个进程容器运行在自己的网络空间,虚拟接口和IP地址。

  日志记录:Docker将会收集和记录每个进程容器的标准流(stdout/stderr/stdin),用于实时检索或批量检索。

  变更管理:容器文件系统的变更可以提交到新的镜像中,并可重复使用以创建更多的容器。无需使用模板或手动配置。

  交互式shell:Docker可以分配一个虚拟终端并关联到任何容器的标准输入上,例如运行一个一次性交互shell。

 

docker的局限性

  docker用于应用程序时是最有用的,但并不包含数据。日志、跟踪和数据库等通常应放在Docker容器外。一个容器的镜像通常都很小,不适合存大量数据,存储可以通过外部挂载的方式使用。例如使用NFS、ipsan、MFS等,-v映射磁盘分区。一句话,docker只用于计算,存储交给别人。

 

docker技术快速精通指南

doctor专业网站:http://www.dockerinfo.net/Docker中文文档csdn的docker专栏: Docker技术快速精通指南 查看详情

docker:docker核心技术预览

开始学习docker了,想写一篇docker技术介绍的纯理论文章,发现以下网站的文档写的特别好,就直接引用了,文章转载自:http://www.infoq.com/cn/DockerDeephttp://www.infoq.com/cn/articles/docker-core-technology-preview?utm_source=articles_about_DockerDeep& 查看详情

docker学习笔记docker容器相关技术

Docker学习笔记(三)Docker容器相关技术 轻量级虚拟化技术命名空间:namespace,隔离系统资源,进程、网络、文件系统等隔离控制组:cgroups,为容器技术而生,分配资源,用来限制、记录、隔离进程资源使用。 命名空间... 查看详情

docker技术之安装

  由于工作原因需要使用docker完成集群的搭建,特此记录一下研究的docker技术。  首先简单的介绍一下docker:    Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup,namespace,以及AUFS类的UnionFS等技术,... 查看详情

docker

一Docker介绍1Docker可以认为是直接使用物理硬件的虚拟机。Docker是完整的一套容器管理系统。Docker提供了一组命令,让用户更加方便直接地使用容器技术,而不需要过多关心底层内核技术。2什么是容器?容器技术已经成为应用程序封... 查看详情

docker容器技术

1.docker简介1.docker架构图  2.镜像容器仓库Docker镜像就是一个只读的模板,镜像可以用来创建容器,一个镜像可以创建多个容器。类似于(类和对象的关系)     2.docker安装  查看详情

3.docker学习之docker与虚拟化

...分割,然后分割出来的部分可以独立使用 有人说:“Docker是虚拟化技术。”有人却说:“虚拟化与Docker容器之争。”那么,到底Docker是不是虚拟化技术,如果是,为啥又说“之争?”其实,准确来说,Docker是一种容器级虚拟... 查看详情

《docker技术入门与实战》pdf

...  · · · · · ·【编辑推荐】《Docker技术入门与实战》是中国首部docker著作,一线Docker先驱实战经验结晶,来自IBM和新浪等多位技术专家联袂推荐!《Docker技术入门与实战》结合企业生产环境,深入浅出... 查看详情

docker技术学习(代码片段)

(一)Docker介绍Docker简介Docker是一个开源项目,诞生于2013年初,最初是dotCloud公司内部的一个业余项目,基于Google公司推出的Go语言实现。Docker项目的目标是实现轻量级的操作系统虚拟化解决方案。Docker的基础是Linux容器(LXC)... 查看详情

第二篇:docker容器技术栈

说明:学习Docker容器技术,先纵向了解大致内容架构,再横向逐一分解涉及的各项技术内容 查看详情

如何系统地学习docker?

1Docker技术可谓是近年最火热的技术之一,铺天盖地的技术论坛和各种讲座,大家都在分享关于如何容器化及如何使用Docker优化自己运维和开发流程的经验。随着Docker技术的逐渐普及,使用Docker已经不再是一个难题。现在更加重... 查看详情

容器技术|docker三剑客之docker-compose(代码片段)

三剑客简介docker-machinedocker技术是基于Linux内核的cgroup技术实现的,那么问题来了,在非Linux平台上是否就不能使用docker技术了呢?答案是可以的,不过显然需要借助虚拟机去模拟出Linux环境来。docker-machine就是docker公司官方提出... 查看详情

❤️虚拟化技术❤️之docker技术详解[⭐建议收藏⭐](代码片段)

文章目录虚拟化技术之docker技术详解[⭐建议收藏⭐]关于作者作者介绍前言虚拟化技术概述及简介一、什么是虚拟化技术?二、常见的虚拟化技术有哪些?2.1KVM虚拟化技术概念2.2ESXI虚拟化技术概念2.3XEN虚拟化技术概念2.4Do... 查看详情

docker技术原理

Docker技术原理之LinuxNamespace(容器隔离) https://blog.csdn.net/songcf_faith/article/details/82748987Docker技术原理之LinuxCgroups(资源限制)    https://blog.csdn.net/songcf_faith/article/details/82749011Docker技术原理之LinuxUnionFS(容器镜像... 查看详情

docker容器技术和传统虚拟机技术的特性比较

Docker是用GO语言编写,诞生于2013年年初,遵循Apache2.0协议,全部开源代码在https://github.com/docker/docker上进行维护。在开发和运维中,为什么要使用docker:更快速的交付和部署更高效的资源利用更轻松的迁移和部署更简单的更新管... 查看详情

docker学习-docker核心技术

镜像:集装箱  ---build仓库:超级码头 ----ship容器:运行程序的地方   ----rundocker运行一个程序的过程:去仓库把镜像拉到本地,然后用一条命令把镜像运行起来变成容器;  查看详情

13-docker技术基本应用实践(代码片段)

文章目录Docker技术简介概述版本说明Docker参考手册Docker应用分析Docker安装准备工作开启虚拟机系统离线安装docker在线安装DockerDocker入门实践基本操作核心对象分析镜像容器数据卷Docker镜像操作实践下载运行镜像删除镜像文件Docker... 查看详情

docker容器技术的核心原理(代码片段)

目录1前言2docker容器技术2.1隔离:Namespace2.2限制:Cgroup2.3rootfs2.4镜像分层3docker容器与虚拟机的对比1前言上图是百度的虚拟机和Docker容器的对比图,看着好像都差不多。那么虚拟机技术都这么成熟了,为什么Docker会火起来呢,Docke... 查看详情