《每天5分钟玩转Docker容器技术》
内容简介
Docker和容器技术是当下热门的IT技术,无论是互联网还是传统企业都在研究和实践如何用容器构建自己的 IT 基础设施。学习本书能够让读者少走弯路,系统地学习、掌握和实践 Docker 和容器技术。 本书共分为三部分。靠前部分介绍容器技术生态环境。第二部分是容器核心知识,包括架构、镜像、容器、网络和存储。第三部分是容器进阶知识,包括多主机管理、跨主机网络方案、监控、日志管理和数据管理。读者在学习的过程中,可以跟着教程进行操作,在实践中掌握 Docker 容器技术的核心技能。在之后的工作中,可以将本教程作为参考书,按需查找相关知识点。 本书主要面向微服务软件开发人员,以及 IT 实施和运维工程师等相关人员,也适合高等院校和培训学校相关专业的师生教学参考。
作者简介
CloudMan,十多年 IT 从业经验,就职于国际知名 IT 企业,从事 IT 基础设施实施服务,项目涉及服务器、存储、网络、虚拟化、云技术等各个方面。CloudMan 对新技术长期保持浓厚的兴趣和学习热情,十几年来一直专注 IT 技术领域的钻研与实践。
目录
第1篇启程
第1章鸟瞰容器生态系统3
1.1容器生态系统3
1.2本教程覆盖的知识范围10
1.3准备实验环境10
1.3.1环境选择10
1.3.2安装Docker10
1.4运行第1个容器11
1.5小结12
第二篇容器技术
第2章容器核心知识概述15
2.1What——什么是容器15
2.2Why——为什么需要容器16
2.2.1容器解决的问题16
2.2.2Docker的特性20
2.2.3容器的优势20
2.3How——容器是如何工作的21
2.4小结24
第3章Docker镜像26
3.1镜像的内部结构26
3.1.1hello-world——最小的镜像26
3.1.2base镜像27
3.1.3镜像的分层结构30
3.2构建镜像32
3.2.1dockercommit32
3.2.2Dockerfile34
3.3RUNvsCMDvsENTRYPOINT42
3.3.1Shell和Exec格式42
3.3.2RUN44
3.3.3CMD44
3.3.4ENTRYPOINT45
3.3.5最佳实践46
3.4分发镜像46
3.4.1为镜像命名46
3.4.2使用公共Registry49
3.4.3搭建本地Registry51
3.5小结52
第4章Docker容器55
4.1运行容器55
4.1.1让容器长期运行56
4.1.2两种进入容器的方法57
4.1.3运行容器的最佳实践59
4.1.4容器运行小结59
4.2stop/start/restart容器60
4.3pause/unpause容器61
4.4删除容器61
4.5StateMachine62
4.6资源限制65
4.6.1内存限额65
4.6.2CPU限额66
4.6.3BlockIO带宽限额68
4.7实现容器的底层技术69
4.7.1cgroup70
4.7.2namespace70
4.8小结72
第5章Docker网络74
5.1none网络74
5.2host网络75
5.3bridge网络76
5.4user-defined网络78
5.5容器间通信84
5.5.1IP通信84
5.5.2DockerDNSServer85
5.5.3joined容器85
5.6将容器与外部世界连接87
5.6.1容器访问外部世界87
5.6.2外部世界访问容器90
5.7小结91
第6章Docker存储92
6.1storagedriver92
6.2DataVolume94
6.2.1bindmount94
6.2.2dockermanagedvolume96
6.3数据共享99
6.3.1容器与host共享数据99
6.3.2容器之间共享数据99
6.4volumecontainer100
6.5data-packedvolumecontainer102
6.6DataVolume生命周期管理103
6.6.1备份104
6.6.2恢复104
6.6.3迁移104
6.6.4销毁104
6.7小结105
第三篇容器进阶知识
第7章多主机管理109
7.1实验环境描述110
7.2安装DockerMachine111
7.3创建Machine112
7.4管理Machine114
第8章容器网络117
8.1libnetwork&CNM117
8.2overlay119
8.2.1实验环境描述120
8.2.2创建overlay网络121
8.2.3在overlay中运行容器122
8.2.4overlay网络连通性124
8.2.5overlay网络隔离126
8.2.6overlayIPAM127
8.3macvlan127
8.3.1准备实验环境127
8.3.2创建macvlan网络128
8.3.3macvlan网络结构分析130
8.3.4用sub-interface实现多macvlan网络131
8.3.5macvlan网络间的隔离和连通132
8.4flannel136
8.4.1实验环境描述137
8.4.2安装配置etcd137
8.4.3buildflannel138
8.4.4将flannel网络的配置信息保存到etcd139
8.4.5启动flannel139
8.4.6配置Docker连接flannel141
8.4.7将容器连接到flannel网络143
8.4.8flannel网络连通性144
8.4.9flannel网络隔离146
8.4.10flannel与外网连通性146
8.4.11host-gwbackend146
8.5weave148
8.5.1实验环境描述148
8.5.2安装部署weave149
8.5.3在host1中启动weave149
8.5.4在host1中启动容器150
8.5.5在host2中启动weave并运行容器153
8.5.6weave网络连通性154
8.5.7weave网络隔离155
8.5.8weave与外网的连通性156
8.5.9IPAM158
8.6calico158
8.6.1实验环境描述159
8.6.2启动etcd159
8.6.3部署calico160
8.6.4创建calico网络161
8.6.5在calico中运行容器161
8.6.6calico默认连通性164
8.6.7calicopolicy167
8.6.8calicoIPAM169
8.7比较各种网络方案170
8.7.1网络模型171
8.7.2DistributedStore171
8.7.3IPAM171
8.7.4连通与隔离172
8.7.5性能172
第9章容器监控173
9.1Docker自带的监控子命令173
9.1.1ps173
9.1.2…74
9.1.3stats175
9.2sysdig175
9.3WeaveScope179
9.3.1安装179
9.3.2容器监控181
9.3.3监控host184
9.3.4多主机监控186
9.4cAdvisor189
9.4.1监控DockerHost189
9.4.2监控容器191
9.5Prometheus194
9.5.1架构194
9.5.2多维数据模型195
9.5.3实践196
9.6比较不同的监控工具204
9.7几点建议205
第10章日志管理207
10.1Dockerlogs207
10.2Dockerloggingdriver209
10.3ELK211
10.3.1日志处理流程211
10.3.2安装ELK套件212
10.3.3Filebeat214
10.3.4管理日志216
10.4Fluentd220
10.4.1安装Fluentd221
10.4.2重新配置Filebeat221
10.4.3监控容器日志221
10.5Graylog222
10.5.1Graylog架构222
10.5.2部署Graylog223
10.5.3配置Graylog225
10.5.4监控容器日志227
10.6小结229
第11章数据管理230
11.1从一个例子开始230
11.2实践Rex-Raydriver232
11.2.1安装Rex-Ray232
11.2.2配置VirtualBox234
11.2.3创建Rex-Rayvolume236
11.2.4使用Rex-Rayvolume237
写在最后243
每天5分钟玩转Docker容器技术 PDF 下载地址:
链接:https://pan.baidu.com/s/1FBIYAxhAU16E_NIJ7ELybg?pwd=d8or
提取码:d8or
复制这段内容后打开百度网盘手机App,操作更方便哦