我理解Docker的过程2
Docker的使用命令有很多,但是主要可以分为四类:
第一类:环境信息相关
info 2.version
第二类:系统运维相关
1.attach 2.build 3.commit 4.cp 5.diff 6.export 7.p_w_picpaths 8.import / save / load 9.inspect 10.kill 11.port 12.pause / unpause 13.ps 14.rm 15.rmi 16.run 17.start / stop / restart 18.tag 19.top 20.wait
第三类:日志信息相关
1.events 2.history 3.logs
第四类:Docker Hub服务相关
login 2.pull/push 3.search
Docker在推广上主要是将开源社区和社交网络作为基础推广平台,结合全球范围的Docker技术聚会,形成了良好的良性的客户互动和口口相传的品牌效应。
我们知道,敏捷开发已经流行了很长时间,如今有越来越多的企业开始践行敏捷开发所提倡的以人为中心、迭代、循序渐进的开发理念。在这样的场景下引入Docker技术,首要目的就是使用Docker提供的虚拟化方式,给开发团队建立一套可以复用的开发环境,让开发环境可以通过Image的形式分享给项目的所有开发成员,以简化开发环境的搭建。但是,在没有Docker技术之前就已经有类如Vagrant的开发环境分发技术,软件开发者一样可以创建类似需求的环境配置流程。所以在开发环境方面,Docker技术的优势并不能很好的发挥出来。但Docker的其它优点还在于可以简化CI(持续集成)、CD(持续交付)的构建流程,让开发者把更多的精力用在开发上。
开发团队在引入Docker技术的过程中,首先需要解决的是让团队成员尽快掌握Docker命令行的使用。在熟悉了Docker命令行之后,团队需要解决几个关键问题具体如下:
1)Base Image的选择, 比如phusion-basep_w_picpath
Base Image包括了操作系统命令行和类库的最小集合,一旦启用,所有应用都需要以它为基础创建应用镜像。Ubuntu作为官方使用的默认版本,是目前最易用的版本,但系统没有经过优化,可以考虑使用第三方有划过的版本,比如如phusion-basep_w_picpath。对于选择RHEL、CentOS分支的Base Image,提供安全框架SELinux的使用、块级存储文件系统devicemapper等技术,这些特性是不能和Ubuntu分支通用的。另外需要注意的是,使用的操作系统分支不同,其裁剪系统的方法也完全不同,所以大家在选择操作系统时一定要慎重。
2)配置管理Docker镜像的工具的选择,比如Ansible、Chef、Puppet
配置管理Docker镜像的工具主要用于基于Dockerfile创建Image的配置管理。我们需要结合开发团队的现状,选择一款团队熟悉的工具作为通用工具。配置工具有很多种选择,其中Ansible作为后起之秀,在配置管理的使用中体验非常简单易用,推荐大家参考使用。
3)Host主机系统的选择,比如CoreOS、Atomic、Ubuntu
Host主机系统是Docker后台进程的运行环境。从开发角度来看,它就是一台普通的单机OS系统,我们仅部署Docker后台进程以及集群工具,所以希望Host主机系统的开销越小越好。这里推荐给大家的Host主机系统是CoreOS,它是目前开销最小的主机系统。另外,还有红帽的开源Atomic主机系统,有基于Fedora、CentOS、RHEL多个版本的分支选择,也是不错的候选对象。另外一种情况是选择最小安装操作系统,自己定制Host主机系统。如果你的团队有这个实力,可以考虑自己定制这样的系统。
转载于:https://blog.51cto.com/mayuenjkxt/1581606
我理解Docker的过程2相关推荐
- 理解Docker——深入引擎室
点击关注 异步图书,置顶公众号 每天与你分享 IT好书 技术干货 职场知识 本文大概 3301 字 读完共需 9 分钟 本文主要内容 Docker的架构 在用户的宿主机上追溯Docker的内部结构 使 ...
- docker ip地址_理解 Docker 网络(番外) -- 《Docker 源码分析》勘误
前言 本来打算这篇文章是分析 Docker Overlay 网络是如何建立以及如何手动实现 Docker 的跨主机通信的.但是在完成了上一篇文章之后,打算找一些文章或者书籍印证我的文章是否正确.这时看 ...
- 从Docker在Linux和Windows下的区别简单理解Docker的层次结构
上篇文章我们成功在Windows下安装了Docker,输出了一个简单的Hello World程序.本文中我们将利用Docker已有的云端镜像training/webapp来发布一个简单Python的W ...
- 深入理解Docker ulimit
为什么80%的码农都做不了架构师?>>> 深入理解Docker ulimit [编者的话]Docker大规模应用后,如果你没踩过坑,说出去肯定没人信.昨天就遇到一个ulimit ...
- docker push 过程 distribution源码 分析
docker push 过程 distribution源码分析 承接上一篇"distribution structure and start up 分析"本文分析一下distrib ...
- 【k8s】理解Docker容器的进程管理(PID1进程(容器内kill命令无法杀死)、进程信号处理、僵尸进程)
文章目录 概述 1. 容器的PID namespace(名空间) 2. 如何指明容器PID1进程 3. 进程信号处理 4. 孤儿进程与僵尸进程管理 5. 进程监控 6. 总结 参考 概述 简介: Do ...
- 10张图带你深入理解Docker容器和镜像--云平台技术栈07
导读:之前发布了云平台技术栈(ps:点击可查看),本文主要说一下其中的Docker! 翻译:杨润青 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(container)和镜像(image ...
- 用一个实际例子理解Docker volume工作原理
要了解Docker Volume,首先我们需要理解Docker文件系统的工作原理.Docker镜像是由多个文件系统的只读层叠加而成.当一个容器通过命令docker run启动时,Docker会加载只读 ...
- 10张图带你深入理解Docker容器和镜像
本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(containe ...
最新文章
- innodb和my查询速度_吃透MySQL:MyISAM和InnoDB存储引擎详细介绍
- dos命令行设置网络优先级_网络安全之木马病毒的防范以及攻击
- 去360总部参加网络信息安全会议经历
- 从零开始学前端:定位 --- 今天你学习了吗?(CSS:Day17)
- nginx 的 proxy_cache 缓存配置
- 重装xp后恢复wubi安装的ubuntu
- c 语言输出字符用什么作用是什么,C语言中输出字符串用什么符号
- Mongodb 3.2 Manual阅读笔记:CH9 存储
- Android实现组件之间同步的回调通信
- 路由交换技术中生成树协议
- B端、C端产品的区别|产品经理面试题第1篇|||答题思路
- php android 微信登录,Android_Android 实现微信登录详解,前言分享到微信朋友圈 - phpStudy...
- 我的世界服务器ess配置信息,我的世界ess指令大全及用法详解
- 工程项目进度控制的重点内容是什么?
- Debian10自签CA证书
- Excel在统计分析中的应用—第十二章—回归分析与预测-运用LINEST函数进行多元线性回归分析
- mxnet Record IO详解
- 浅谈缓存系统的三个问题
- 《Python+Kivy(App开发)从入门到实践》自学笔记:ScatterLayout布局
- access贝克曼_贝克曼库尔特ACCESS 2化学发光免疫分析仪
热门文章
- /etc/ssh/sshd_config 关建字:PermitRootLogin no 禁示以root身份登录服务器
- phpcms9-6-0 一键getshell工具
- 汇编中16进制的写法问题
- python模块之hashlib加密
- python asyncore
- linux驱动的入口函数module_init的加载和释放(转)
- c#中Task线程的用法
- 在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加“#include quot;StdAfx.hquot;”?
- 通过点击事件监听 setOnClickListener 彻底理解回调-Android
- C++实现黑客帝国流星雨效果