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

[经验分享] Docker学习总结

[复制链接]
发表于 2017-6-23 11:29:29 | 显示全部楼层 |阅读模式
  本文作为总结性文章,不会详细讲解Docker。但会把已学习的、了解的内容按照由易到难的顺序串起来,更多的是帮助Docker新手快速的了解Docker,知道目前处在哪个阶段,接下来该学些什么,避免碰太多壁。博主水平有限,对于Docker还在不断学习中,本文如有不对的地方,烦请指出。

Docker是什么
  Docker 是一个开源的应用容器引擎(Engine),让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。
DSC0000.png

  Docker与传统的虚拟机(如VMware,VirtualBox)很相似,但更具优势:
  
1、创建和销毁秒级完成,启动速度飞快;
  
2、体积小,可迁移到任何流行的Linux机器上;
  
3、占用系统资源极低;
  
4、可自动化部署、集群管理。

Docker基础
  需要掌握的内容:
  1、安装
  
2、区分Docker服务端(Server)与客户端(Client)
  
3、镜像
  
4、容器
  
5、容器互联
  
6、数据卷
  
7、镜像仓库
  
8、Dockerfile
  此阶段建议阅读:
  
1、《Docker技术入门与实战》
  
2、Docker官方文档:https://docs.docker.com/
  
3、Docker学习笔记
  
http://www.cnblogs.com/52fhy/p/5638571.html

  说明:官方文档虽然为英文,但阅读起来并不是那么难,坚持下去,受益匪浅,写的是很不错的。国内很难找到这么全的资料。下面列出官方文档可仔细阅读的地方:
  
1、Linux上安装:https://docs.docker.com/engine/installation/linux/
  
2、Hello world in a container: https://docs.docker.com/engine/tutorials/dockerizing/
  
3、Dockerfile参考:https://docs.docker.com/engine/reference/builder/
  
4、Dockerizing a Redis service:
  
https://docs.docker.com/engine/examples/running_redis_service/
  
5、Docker run 参考:
  
https://docs.docker.com/engine/reference/run/
  
6、Docker 命令行参考:
  
https://docs.docker.com/engine/reference/commandline/
  
7、Remote API参考:
  
https://docs.docker.com/engine/reference/api/docker_remote_api/


  《Docker技术入门与实战》作为基础入门书籍非常合适,感兴趣的同学可以购买阅读。另外极客学院的Docker视频教程也非常不错。

  鉴于国内的网络情况,pull镜像时有必要准备梯子。当然也可以使用国内云平台提供的服务:


  • DaoCloud https://www.daocloud.io/
  • 阿里云 https://dev.aliyun.com/search.html?spm=5176.775974865.0.0.Iot0iJ
  • 网易蜂巢 https://c.163.com/
Docker工具
  Docker社区很活跃,并涌现出了很多实用的工具。掌握了Docker基础后,借助工具可以更高效的使用Docker。

docker hub
  docker镜像仓库。
  官方镜像仓库:
  
https://hub.docker.com/explore/

Fig
  Fig 主要用来跟 Docker 一起来构建基于 Docker 的复杂应用,Fig 通过一个配置文件来管理多个Docker容器,非常适合组合使用多个容器进行开发的场景。目前Fig已经升级并更名为Compose。
DSC0001.gif


Compose
  Compose是Fig的升级版。Compose向下兼容Fig(学完任意一个均可)。官方文档写的很详细,建议仔细阅读。
  Overview of Docker Compose - Docker
  
https://docs.docker.com/compose/overview/

  重点:
  
1、安装Compose:
  
https://docs.docker.com/compose/install/
  
2、Compose文件参考:
  
https://docs.docker.com/compose/compose-file/
  
3、compose命令行参考:
  
https://docs.docker.com/compose/reference/overview/


Docker Machine
  Machine是一个简化docker安装的命令行工具,其可以在不同平台上创建包含docker的实例。
  Docker Machine的出现主要是为了解决各平台安装docker困难的问题。现如今,不同云平台上安装docker的流程都不一样,这样对于用户部署docker主机就非常复杂。为了解决这一问题,出现了machine项目 (https://github.com/docker/machine),通过docker-machine可以在不同平台上(例如Azure、 Rackspace、Openstack、Google等云平台)创建docker主机。
  Docker Machine也支持安装在Windows、Mac平台(实质是借助虚拟机实现的,建议直接安装Docker Toolbox),这样,我们既可以使用现有的系统办公娱乐,还可以使用Docker Machine管理Docker。
  通过安装docker-machine命令行工具,可以创建docker本地主机,也可以一键切换到远程主机。

Docker Toolbox
  Toolbox是一个安装器,目前支持Mac和Windows平台。使用它可以快速地在安装Docker工具集。类似于大家常说的集成环境。
  最新版Docker Toolbox包含以下内容:


  • docker 1.12.2
  • docker-machine 0.8.2
  • docker-compose 1.8.1
  • Kitematic 0.12.0
  • Boot2Docker ISO 1.12.2
  • VirtualBox 5.1.6
  docker/toolbox: The Docker Toolbox
  
https://github.com/docker/toolbox
  Docker Toolbox | Docker
  
http://www.docker.com/products/docker-toolbox

Docker Registry
  Registry是个镜像,用于构建私有镜像仓库。

可视化管理工具
  1、DockerUI
  
DockerUI 基于Docker API,提供等同Docker命令行的大部分功能,支持Container管理,Image管理。
  使用:
  

$ docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock dockerui/dockerui  

DSC0002.png

  kevana/ui-for-docker: An unofficial web interface for Docker, formerly known as DockerUI
  
https://github.com/kevana/ui-for-docker
  microbox/dockerui: 精简版dockeui ~ 16 MB
  
https://github.com/microbox/dockerui
  2、Shipyard
  
Shipyard也是完全基于Docker API。
  https://github.com/shipyard/shipyard

Docker云平台
  现在已经有很多云平台已经支持Docker,包括应用编排、代码构建、集群等功能。


  • DaoCloud:提供镜像仓库、应用管理、应用编排、数据卷、集群管理,并且免费使用1~2个容器,或者加入自己的服务器进行管理。
  • 百度BAE:提供弹性、分布式的应用托管服务,帮助开发者一站式轻松开发并部署应用程序(Web应用及移动应用)。每月花几元钱就可以使用容器服务部署应用程序。
  • 阿里云容器 :提供镜像仓库、容器云服务,除镜像仓库其它均属按量付费,且需要开通负载均衡。
  • 网易蜂巢:提供镜像仓库、容器云服务。
  • 灵雀云:容器云平台,提供企业级应用集成、交付、运维的一站式解决方案。
集群

Docker Swarm
  (学习中...)

Kubernetes
  (学习中...)

Mesos

博客已发表文章
  1、Docker学习笔记
  
http://www.cnblogs.com/52fhy/p/5638571.html
  
2、Fig 应用编排
  
http://www.cnblogs.com/52fhy/p/5962440.html
  
3、Docker实践:安装wordpress
  
http://www.cnblogs.com/52fhy/p/5962287.html
  
4、Docker实践:运行Python应用
  
http://www.cnblogs.com/52fhy/p/5962770.html
  
5、Docker之Compose服务编排
  
http://www.cnblogs.com/52fhy/p/5991344.html
  
6、Docker私有仓库搭建
  
http://www.cnblogs.com/52fhy/p/5998747.html
  更多详见:随笔分类 - Docker

运维网声明 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-387289-1-1.html 上篇帖子: 2-13 搭建LAMP环境并部署Ucenter和Ucenter-home网站 下篇帖子: Linux下查看系统配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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