没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
深入解析Docker容器化技术
Docker概述
什么是Docker
Docker 是一个开源的应用容器引擎,基于 Go 语言开发并遵从 Apache2.0 协议开源。使用
Docker可以让开发者封装他们的应用以及依赖包到一个可移植的容器中,然后发布到任意
的Linux机器上,也可以实现虚拟化。Docker容器完全使用沙箱机制,相互之间不会有任何
接口,这保证了容器之间的安全性。
Docker诞生于2013年初,目前有两个版本, Community Edition 社区版和 Enterprise
Edition 企业版。其中Docker社区版是免费开源的,对于个人和小团队来说是比较理想的
选择。Docker企业版则是收费的,是专门为企业和大型it团队提供的,用于要求比较严格
的商业应用中。对于初学者而言,使用docker社区版足以满足需求。
Docker的特点
Docker作为当前主流的一个开源容器引擎,其主要特点如下:
(1)更快速的交付和部署
开发者可以使用一个标准的Docker镜像来构建一套开发容器,开发完成之后,运维人员可
以直接使用这个容器来部署代码。Docker可以快速创建容器以及快速迭代应用程序,并让
整个过程全程可见,使团队中的其他成员更容易理解应用程序是如何创建和工作的。
Docker容器轻,且启动的速度快,可以大量的节约开发,测试和部署的时间。
(2)更高效的虚拟化
Docker容器在运行时不需要额外的虚拟机程序的支持,由于它是内核级的虚拟化,所以可
以更实现更高的性能和效率。
(3)更轻松地迁移和扩展
Docker容器几乎可以在任意的平台上运行,包括物理机,虚拟机,公有云,私有云,个人
计算机和服务器的。这种良好的兼容性可以让用户把一个应用程序从一个平台直接迁移到
另外一个平台,十分有利于应用的迁移和扩展。
Docker 面向对象
容器 对象
镜像 类
(4)更简单的管理
使用Docker只需要小小的修改就可以替代以往大量的更新工作,所有的修改都以增量的方
式被分发和更新,从而实现自动化并且高效的管理。
除上述几个特点外,Docker还具有实现逻辑分离,适合与面向服务的架构配合使用等特
点。
Docker架构
Docker 包括三个基本概念:
镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。比如官方镜
像 ubuntu:16.04 就包含了完整的一套 Ubuntu16.04 最小系统的 root 文件系统。
容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程
序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被
创建、启动、停止、删除、暂停等。
仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。
Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。
Docker 容器通过 Docker 镜像来创建。
容器与镜像的关系类似于面向对象编程中的对象与类。
概念 说明
Docker
Registry
Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。
Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。
一个 Docker Registry 中可以包含多个仓库(Repository);
每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。
通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应
该软件的各个版本。
我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的
镜像。如果不给出标签,将以 latest 作为默认标签。
Docker
Machine
Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命
令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、
Microsoft Azure。
Docker和虚拟机的区别
从上图的对比中可以看出,虚拟机是运行在每个应用层级的客户端操作系统上的,这是资
源密集型的。由于产生的磁盘镜像和应用程序的操作系统设置相互交叉,所以导致虚拟机
对系统的依赖性很强。一旦系统出现问题,虚拟机依赖的文件以及安全补丁等都可能会出
现文件丢失的情况。
Docker中的容器是基于进程隔离的,多个容器可以共享单个内核,并且创建docker容器的
镜像所需要的配置并不依赖于宿主机系统。正是因为容器之间配置的隔离性,容器之间就
没有配置交叉,所以docker的应用可以运行在任何地方。
Docker的安装
Docker安装要求
Docker支持在多种平台上使用,包括Mac、Windows、Cloud以及Linux系统等。由于
Docker是基于Ubuntu发布的,所以官方更推荐在Ubuntu上使用Docker,开发者也可以根
据自己的实际开发环境选择合适的开发平台。
如果使用的操作系统为CentOS,安装Docker建议在CentOS7.x及以上的版本,此处使用
CentOS8.x版本进行安装。
Docker安装步骤
基于CentOS8.x版本进行安装Docker,按照以下步骤执行即可实现安装。
需要注意的是,CentOS8.x版本默认使用podman,所以需要先将其卸载,如上述的第4步。
如果CentOS版本为7.X版本,则省略第4步的命令配置。
配置容器镜像加速器
国内从 DockerHub 拉取镜像有时会遇到困难,此时可以配置镜像加速器。Docker 官方和
国内很多云服务商都提供了国内加速器服务,例如:
科大镜像: https://docker.mirrors.ustc.edu.cn/
# 1、yum 包更新到最新
yum update
# 2、安装需要的软件包, yum-util 提供yum-config-manager功能,另外两个是
devicemapper驱动依赖的
yum install -y yum-utils device-mapper-persistent-data lvm2
# 3、 设置yum源
yum-config-manager --add-repo
https://download.docker.com/linux/centos/docker-ce.repo
# 4、卸载 podman
yum erase podman buildah
# 5、安装docker,出现输入的界面都按 y
yum install -y docker-ce
# 6、 查看docker版本,验证是否验证成功
docker -v
1
2
3
4
5
6
7
8
9
10
11
12
剩余28页未读,继续阅读
资源评论
ywp2021
- 粉丝: 1138
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- Surfer,线性函数
- MyBatis 的动态 SQL 是其核心特性之一.txt
- 时代的sdddsddsddsd
- 基于哈希链表的简单人员信息管理系统
- 其他类别JdonFramework开源框架 v5.1 Build20071025-jdonframework-5.1.rar
- 2001~2022年上市公司数字赋能指数.dta
- 2001~2022年上市公司数字赋能指数.xlsx
- 信息办公石大在线财务管理系统(含源码)-shidacaiwu.rar
- 信息办公电信计费系统完整代码-netctossconformity.rar
- matlab实现TD-SCDMA中初始同步捕捉DwPTS下行同步导频时隙的仿真.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功