设为首页 收藏本站
查看: 1024|回复: 0

[经验分享] Docker入门简介

[复制链接]

尚未签到

发表于 2017-12-6 15:35:12 | 显示全部楼层 |阅读模式
Docker的概念
  什么是Docker?
  Docker是一个开源平台,包含:容器引擎和Docker Hub注册服务器
  Docker容器引擎:可以将开发者打包他们的应用和依赖包到一个可一直的容器中,然后将其发布到任何流行的Linux机器上。
  Docker Hub 注册服务器:用户可以该注册服务器上创建自己的镜像库来存储、管理和分享镜像。利用Docker,可以实现软件一次配置,处处运行
  RedHat从RHEL6.5开始集成对Docker的支持。

容器与虚拟机
  Docker是容器的一种,容器是一种轻量级的虚拟技术,重量级的则是虚拟机,例如VMware,VirtualBox等
  容器与虚拟机的对比


  容器

  虚拟机

  相同点

  都可以在不同的主机之间迁移
  都具备root权限
  都可以远程控制
  都有备份,回滚操作

  操作系统

  在性能上有优势,能够轻易的同时运行多个操作系统

  可以安装任何操作系统,性能不急容器

  优点

  更为高效,集中。一个硬件节点可以运行数以百计的容器,非常节省资源。Qos会尽量满足,但不保证一定满足,内核由提供者升级,服务由服务器提供者管理

  对操作系统具有绝对的权限,对系统版本和升级具有完全管理权限。具有一整套的资源:CPU,RAM和磁盘,QoS是具有保证的。每一个操作虚拟机像一个真实的物理机一样,可以实现不同的操作系统同时运行在同一个物理节点上。

  资源管理

  弹性的资源分配:资源可以在没有关闭容器的情况下添加,数据卷也无需重新分配大小(有些服务的容器需要重启)

  虚拟机需要重启,虚拟机里的操作系统需要处理新加入的资源,例如添加一块磁盘,则需要重新分区等

  远程管理

  根据操作系统的不同,会通过shell或者远程桌面进行,前提是容器内的操作系统已经启动

  远程控制由虚拟化平台提供,可以在虚拟机启动之前连接。所以可以安装系统

  缺点

  对内核没有控制权限,只有容器的提供者具备升级权限。只有一个内核运行在物理节点上,几乎不能实现不同的操作系统混合。容器提供者一般仅提供少数的几款操作系统

  每一台虚拟机具有更大的负载,耗费更多的资源,用于需要全权维护和管理。一台物理机上能够运行的虚拟机也非常有限

  配置

  快速,秒级即可准备好,由容器提供者处理

  配置时间长,从几分钟到几小时,具体取决于操作系统,需要自行安装操作系统

  启动时间

  秒级

  分钟级

  硬盘使用

  MB

  GB

  性能

  接近原生态

  若于原生态

  系统支持量

  单机支持上千个容器

  一般不多于几十个





Docker的应用场景
  Docker几种典型的应用场景


  • 加速本地开发,通过Docker能够快速搭建好开发和运行环境,并且该环境可以直接传递给测试和产品部署
  • 自动打包和部署应用
  • 创建轻量、私有的PaaS环境
  • 自动化测试和持续集成/部署
  • 部署并扩展Web应用、数据库和后端服务器
  • 创建安全沙盒子
  • 轻量级桌面虚拟化

Docker的组件
  Docker采用的是C/S架构
  Docker客户端,即Docker可执行程序,可以通过命令和API的形式与Docker守护程序进行通信,Docker守护程序提供Docker服务
  Docker包含三大核心组件:镜像、容器和库
  镜像:一个只读的静态模板。保存着容器需要的环境和应用的执行代码,可以把镜像看成容器的代码。当代码运行起来后就成了容器。镜像采用分层机制,每个镜像都是只读的,但是可以将写数据的层通过联合文件系统附加在原有镜像之上,这种增量式修改使得镜像非常容易存储、传输和更新。
  容器:是一个运行时环境,它是一个镜像的运行状态,相对于静态的镜像而言。容器是镜像执行时的动态表现。
  库:Docker采用注册服务器来存储和共享用户的镜像,库是某个特定用户存储镜像的目录。

AUFS
  Docker利用AUFS来实现对容器的快速更新。
  AUFS是一种支持将不同目录挂载到同一个虚拟文件系统下的文件系统,支持对每个目录的读写权限管理。另外,AUFS具有层的概念,每一次修改都是在已有的只写层进行增量修改,修改内容将形成新的文件层,而不影响原有层。

Docker的安装

安装环境:
  内核版本



[iyunv@docker ~]# uname -r
2.6.32-573.el6.x86_64
[iyunv@docker ~]#
  系统版本



[iyunv@docker ~]# cat /etc/redhat-release
CentOS release 6.7 (Final)
[iyunv@docker ~]#
  注意:如果使用RedHat linux或者Centos linux ,需要时6.5以上的版本以及内核版本在2.6.32-431以上

安装EPEL的命令



rpm -Uvh http://mirror.math.princeton.edu/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
安装Docker



yum install docker-io –y
启动Docker后台



./etc/init.d/docker start
确认Doocker安装成功



[iyunv@docker ~]# docker info
Containers: 0
Images: 0
Storage Driver: devicemapper
Pool Name: docker-8:3-3016327-pool
Pool Blocksize: 65.54 kB
Backing Filesystem: extfs
Data file: /dev/loop0
Metadata file: /dev/loop1
Data Space Used: 305.7 MB
Data Space Total: 107.4 GB
Data Space Available: 78.07 GB
Metadata Space Used: 729.1 kB
Metadata Space Total: 2.147 GB
Metadata Space Available: 2.147 GB
Udev Sync Supported: true
Deferred Removal Enabled: false
Data loop file: /var/lib/docker/devicemapper/devicemapper/data
Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
Library Version: 1.02.95-RHEL6 (2015-04-15)
Execution Driver: native-0.2
Logging Driver: json-file
Kernel Version: 2.6.32-573.el6.x86_64
Operating System: <unknown>
CPUs: 1
Total Memory: 1.826 GiB
Name: docker
ID: ZRF4:2E26:P3LZ:TK37:5HJG:5VP3:HUVQ:NSMR:J6BG:WMWO:YEDJ:MDGZ

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-421367-1-1.html 上篇帖子: Docker部署Hadoop集群 下篇帖子: Docker 环境下配置多域名 SSL
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表