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

[经验分享] 【Docker】Docker是什么?怎么安装?怎么用?

[复制链接]

尚未签到

发表于 2015-4-18 05:35:23 | 显示全部楼层 |阅读模式
    从今天开始学习Docker,通过对网上资料的搜集与学习,记录一下。

  是什么 ?
  Docker是一个基于LXC实现的类似于VMs的超轻量级虚拟机。
  它与VMs的区别在于,VMs提供的是一个完整的操作系统虚拟环境,从硬件层次上,包含了大量类似硬件驱动、虚拟处理器、网络接口等等并不需要的信息,并且虚拟机也需要比较长时间的启动,同时也会消耗大量的内存、CPU 资源。
  而Docker 扩展了 Linux 容器(Linux Containers),或着说 LXC,通过一个高层次的 API 为进程单独提供了一个轻量级的虚拟环境。Docker 利用了 LXC, cgroups 和 Linux 自己的内核。和传统的虚拟机不同的是,一个 Docker 容器并不包含一个单独的操作系统,而是基于已有的基础设施中操作系统提供的功能来运行的。
DSC0000.jpg
  Docker 会像一个可移植的容器引擎那样工作。它把应用程序及所有程序的依赖环境打包到一个虚拟容器中,这个虚拟容器可以运行在任何一种 Linux 服务器上。
  并且Docker并不会像普通虚拟机一样包含操作系统内核,也不需要虚拟一切硬件平台,它直接通过Docker Engine在宿主机平台上进行调度,从而大大减少了调用的复杂度,减少了运行的时间。
  Docker 由下面这些组成:
    1. Docker 服务器守护程序(server daemon),用于管理所有的容器。
    2. Docker 命令行客户端,用于控制服务器守护程序。
    3. Docker 镜像:查找和浏览 docker 容器镜像。
  Docker的优点:
  1. 启动速度块,通常1秒就能启动。
  2. 资源利用率高,单位宿主机可同时运行的容器多。
  3. 性能开销很小。
  Docker的缺陷:
  1. Docker是基于Linux 64bit的,无法在windows/unix或32bit的linux环境下使用
  2. LXC是基于cgroup等linux kernel功能的,因此container的guest系统只能是linux base的
  3. 隔离性相比KVM之类的虚拟化方案还是有些欠缺,所有container公用一部分的运行库
  4. 网络管理相对简单,主要是基于namespace隔离
  5. cgroup的cpu和cpuset提供的cpu功能相比KVM的等虚拟化方案相比难以度量(所以dotcloud主要是按内存收费)
  6. docker对disk的管理比较有限
  7. container随着用户进程的停止而销毁,container中的log等用户数据不便收集

  怎么装 ?
  关于安装一个新的东东,最靠谱还是官方的文档了。
  官方以ubuntu为例,我的系统为Debian,安装方法大致相同。
  1、更新源:



sudo apt-get update
  2、添加Docker的repository到你的本地秘钥库:



sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 36A1D7869245C8950F966E92D8576A8BA88D21E9
  3、将Docker添加到你的apt软件安装源:



sudo sh -c "echo deb http://get.docker.io/ubuntu docker main /etc/apt/sources.list.d/docker.list"
  4、更新:



sudo apt-get update
  5、安装Docker:



sudo apt-get install lxc-docker
  安装完毕后,输出docker测试,如果安装成功了会出现:
DSC0001.png
  表示安装成功了。
  官方还提供了一个简单的脚本来帮助你安装Docker,只要运行这个指令:



curl -s https://get.docker.io/ubuntu/ | sudo sh
  一切就按部就班的进行了。

  以上是旧版本的安装方法,Docker正式版出来之后,Debain/Ubuntu用户可以直接使用命令:



sudo apt-get install docker.io
  来一键安装docker

  怎么用 ?
  现在我们来试试运行一个Hello World!
  首先获取一个ubuntu镜像:



sudo docker pull ubuntu
  如果感觉慢,可以从docker中文官网介绍的一样,从国内的镜像点下载:



docker pull docker.cn/docker/ubuntu
  待下载完后:
DSC0002.png
  运行:



root@amd64:~# docker run docker.cn/docker/ubuntu /bin/echo xxxxx
  效果:
DSC0003.png
  这个是最简单的例子,更多应用,慢慢探索!

运维网声明 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-58162-1-1.html 上篇帖子: Debian 7 安装 Docker 下篇帖子: coreOS+Docker新一代企业轻量级Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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