新書推薦:
《
股票大作手操盘术
》
售價:HK$
53.8
《
何以中国·何谓唐代:东欧亚帝国的兴亡与转型
》
售價:HK$
87.4
《
一间只属于自己的房间 女性主义先锋伍尔夫代表作 女性精神独立与经济独立的象征,做自己,比任何事都更重要
》
售價:HK$
44.6
《
泉舆日志 幻想世界宝石生物图鉴
》
售價:HK$
134.2
《
养育女孩 : 官方升级版
》
售價:HK$
50.4
《
跨界:蒂利希思想研究
》
售價:HK$
109.8
《
千万别喝南瓜汤(遵守规则绘本)
》
售價:HK$
44.7
《
大模型启示录
》
售價:HK$
112.0
|
編輯推薦: |
畅销书升级版,基于Docker 1.21及以上版本,学习Docker的第壹本书,非常全面系统。
|
內容簡介: |
本书从Docker基本原理开始,深入浅出地讲解Docker的构建与操作,内容系统全面,可帮助开发人员、运维人员快速部署Docker应用。本书分为四大部分:基础入门、实战案例、进阶技能、开源项目。第2版参照Docker技术的新进展对全书内容进行了修订,并增加了第四部分专门介绍与容器相关的知名开源项目,利用好这些源平台,可以更好地在生产实践中受益。
|
關於作者: |
杨保华博士,清华大学毕业,现为 IBM 中国研究院研究员。主要从事数据中心网络解决方案的研发与部署,技术方向包括云计算、软件定义网络(SDN)、网络安全等,是国内较早从事 SDN 和网络虚拟化相关技术的推广者,同时也是DockerPool开源社区的发起人之一。
|
目錄:
|
目录?Contents
第2版前言
第1版前言
第一部分 基础入门
第1章 初识容器与Docker3
1.1 什么是Docker3
1.2 为什么要使用Docker5
1.3 Docker与虚拟化7
1.4 本章小结9
第2章 核心概念与安装配置10
2.1 核心概念10
2.2 安装Docker11
2.2.1 Ubuntu环境下安装Docker12
2.2.2 CentOS环境下安装Docker14
2.2.3 通过脚本安装14
2.2.4 Mac OS环境下安装Docker15
2.2.5 Windows环境下安装Docker20
2.3 配置Docker服务21
2.4 推荐实践环境22
2.5 本章小结22
第3章 使用Docker镜像23
3.1 获取镜像23
3.2 查看镜像信息25
3.3 搜寻镜像28
3.4 删除镜像29
3.5 创建镜像31
3.6 存出和载入镜像32
3.7 上传镜像33
3.8 本章小结33
第4章 操作Docker容器34
4.1 创建容器34
4.2 终止容器39
4.3 进入容器40
4.4 删除容器42
4.5 导入和导出容器42
4.6 本章小结44
第5章 访问Docker仓库45
5.1 Docker Hub公共镜像市场45
5.2 时速云镜像市场47
5.3 搭建本地私有仓库48
5.4 本章小结50
第6章 Docker数据管理51
6.1 数据卷51
6.2 数据卷容器52
6.3 利用数据卷容器来迁移数据53
6.4 本章小结54
第7章 端口映射与容器互联55
7.1 端口映射实现访问容器55
7.2 互联机制实现便捷互访57
7.3 本章小结59
第8章 使用Dockerfile创建镜像60
8.1 基本结构60
8.2 指令说明62
8.3 创建镜像67
8.4 使用.dockerignore文件67
8.5 最佳实践67
8.6 本章小结68
第二部分 实战案例
第9章 操作系统71
9.1 BusyBox71
9.2 Alpine72
9.3 DebianUbuntu74
9.4 CentOSFedora76
9.5 本章小结77
第10章 为镜像添加SSH服务78
10.1 基于commit命令创建78
10.2 使用Dockerfile创建80
10.3 本章小结82
第11章 Web服务与应用83
11.1 Apache83
11.2 Nginx87
11.3 Tomcat88
11.4 Jetty92
11.5 LAMP93
11.6 CMS94
11.6.1 WordPress94
11.6.2 Ghost96
11.7 持续开发与管理96
11.7.1 Jenkins97
11.7.2 Gitlab98
11.8 本章小结99
第12章 数据库应用100
12.1 MySQL100
12.2 MongoDB102
12.2.1 使用官方镜像102
12.2.2 使用自定义Dockerfile104
12.3 Redis106
12.4 Memcached108
12.5 CouchDB108
12.6 Cassandra109
12.7 本章小结110
第13章 分布式处理与大数据平台111
13.1 RabbitMQ111
13.2 Celery113
13.3 Hadoop114
13.4 Spark115
13.4.1 使用官方镜像116
13.4.2 验证116
13.5 Storm117
13.6 Elasticsearch119
13.7 本章小结120
第14章 编程开发121
14.1 CC++121
14.1.1 GCC121
14.1.2 LLVM122
14.1.3 Clang122
14.2 Java123
14.3 Python124
14.3.1 使用官方的Python镜像124
14.3.2 使用PyPy124
14.4 JavaScript125
14.5 Go127
14.5.1 搭建并运行Go容器127
14.5.2 Beego130
14.5.3 Gogs:基于Go的Git服务130
14.6 PHP130
14.7 Ruby132
14.7.1 使用Ruby官方镜像132
14.7.2 JRuby133
14.7.3 Ruby on Rails134
14.8 Perl135
14.9 R136
14.10 Erlang138
14.11 本章小结140
第15章 容器与云服务141
15.1 公有云容器服务141
15.1.1 AWS141
15.1.2 Google Cloud Platform142
15.1.3 Azure143
15.1.4 腾讯云144
15.1.5 阿里云144
15.1.6 华为云144
15.1.7 UCloud145
15.2 容器云服务145
15.2.1 基本要素与关键特性146
15.2.2 网易蜂巢146
15.2.3 时速云147
15.2.4 Daocloud148
15.2.5 灵雀云148
15.2.6 数人云149
15.3 阿里云容器服务150
15.4 时速云容器平台151
15.5 本章小结153
第16章 容器实战思考154
16.1 Docker为什么会成功154
16.2 研发人员该如何看容器155
16.3 容器化开发模式156
16.4 容器与生产环境158
16.5 本章小结160
第三部分 进阶技能
第17章 Docker核心实现技术163
17.1 基本架构163
17.2 命名空间165
17.3 控制组167
17.4 联合文件系统169
17.5 Linux网络虚拟化171
17.6 本章小结174
第18章 配置私有仓库175
18.1 安装Docker Registry175
18.2 配置TLS证书177
18.3 管理访问权限178
18.4 配置Registry181
18.4.1 示例配置181
18.4.2 选项183
18.5 批量管理镜像188
18.6 使用通知系统190
18.6.1 相关配置190
18.6.2 Notif?ication的使用场景192
18.7 本章小结193
第19章 安全防护与配置194
19.1 命名空间隔离的安全194
19.2 控制组资源控制的安全195
19.3 内核能力机制195
19.4 Docker服务端的防护197
19.5 更多安全特性的使
|
內容試閱:
|
Preface?第2版前言自云计算步入市场算起,新一代计算技术刚好走过了第一个十年。在过去十年里,围绕计算、存储、网络三大基础服务,围绕敏捷服务和规模处理两大核心诉求,新的概念、模式和工具争相涌现。这些创新的开源技术成果,提高了整个信息产业的生产效率,降低了应用信息技术的门槛,让“互联网+”成为可能。如果说软件定义网络(SDN)和网络功能虚拟化(NFV)让互联网络的虚拟化进入了崭新的阶段,那么容器技术的出现,毫无疑问称得上计算虚拟化技术的又一大创新。从Linux Container到Docker,看似是计算技术发展的一小步,却是极为重要的历史性突破。容器带来的不仅仅是技术体验上的改进,更多的是新的开发模式、新的应用场景、新的业务可能……容器技术自身在快速演进的同时,笔者也很欣喜地看到,围绕着容器的开源生态系统越发繁盛。Docker三剑客Machine、Compose、Swarm相辅相成,集团作战;搜索巨人则推出Kubernetes,领航新一代容器化应用集群平台;还有Mesos、CoreOS,以及其他众多的开源工具。这些工具的出现,弥补了现有容器技术栈的不足,极大地丰富了容器技术的应用场景,增强了容器技术在更多领域的竞争力。在第2版中,笔者参照容器技术最新进展对全书内容进行了修订完善,并增加了第四部分专门介绍与容器相关的知名开源项目,利用好这些优秀的开源平台,可以更好地在生产实践中受益。成书之际,Docker发布了1.13版本,带来了更稳定的性能和更多有趣的特性。再次感谢容器技术,感谢开源文化,希望开源技术能得到更多的支持和贡献!最后,IBM中国研究院的刘天成、李玉博等帮忙审阅了部分内容,在此表达最深厚的感谢!杨保华2016年12月于北京第1版前言?Preface在一台服务器上同时运行一百个虚拟机,肯定会被认为是痴人说梦。而在一台服务器上同时运行一千个Docker容器,这已经成为现实。在计算机技术高速发展的今天,昔日的天方夜谭正在一个个变成现实。多年的研发和运维(DevOps)经历中,笔者时常会碰到这样一个困境:用户的需求越来越多样,系统的规模越来越庞大,运行的软件越来越复杂,环境配置问题所造成的麻烦层出不穷……为了解决这些问题,开源社区推出过不少优秀的工具。这些方案虽然在某些程度上确能解决部分“燃眉之急”,但是始终没有一种方案能带来“一劳永逸”的效果。让作为企业最核心资源的工程师们花费大量的时间,去解决各种环境和配置引发的 Bug,这真的正常吗?回顾计算机的发展历程,最初,程序设计人员需要直接操作各种枯燥的机器指令,编程效率之低可想而知。高级语言的诞生,将机器指令的具体实现成功抽象出来,从此揭开了计算机编程效率突飞猛进的大时代。那么,为什么不能把类似的理念(抽象与分层)也引入到现代的研发和运维领域呢?Docker无疑在这一方向上迈出了具有革新意义的一步。笔者在刚接触Docker时,就为它所能带来的敏捷工作流程而深深吸引,也为它能充分挖掘云计算资源的效能而兴奋不已。我们深信,Docker的出现,必将给DevOps技术,甚至整个信息技术产业的发展带来深远的影响。笔者曾尝试编写了介绍Docker技术的中文开源文档。短短一个月的时间,竟收到了来自全球各个地区超过20万次的阅读量和全五星的好评。这让我们看到国内技术界对于新兴开源技术的敏锐嗅觉和迫切需求,同时也倍感压力,生怕其中有不妥之处,影响了大家学习和推广Docker技术的热情。在开源文档撰写过程中,我们一直在不断思考,在生产实践中到底怎么用Docker才是合理的?在“华章图书”的帮助下,终于有了现在读者手中的这本书。与很多技术类书籍不同,本书中避免一上来就讲述冗长的故事,而是试图深入浅出、直奔主题,在最短时间内让读者理解和掌握最关键的技术点,并且配合实际操作案例和精炼的点评,给读者提供真正可以上手的实战指南。本书在结构上分为三大部分。第一部分是Docker技术的基础知识介绍,这部分将让读者对Docker技术能做什么有个全局的认识;第二部分将具体讲解各种典型场景的应用案例,供读者体会Docker在实际应用中的高效秘诀;第三部分将讨论一些偏技术环节的高级话题,试图让读者理解Docker在设计上的工程美学。最后的附录归纳了应用Docker的常见问题和一些常用的参考资料。读者可根据自身需求选择阅读重点。全书主要由杨保华和戴王剑主笔,曹亚仑写作了编程开发和实践之道章节。本书在写作过程中参考了官方网站上的部分文档,并得到了DockerPool技术社区网友们的积极反馈和支持,在此一并感谢!成稿之际,Docker已经发布了增强安全特性的1.3.2版本。衷心祝愿Docker及相关技术能够快速成长和成熟,让众多IT从业人员的工作和生活都更加健康、更加美好!作者于2014年11月
|
|