展开全部

主编推荐语

本书深入浅出讲解Docker,从开发环境到生产落地全流程,提供101个实用技巧。

内容简介

本书由浅入深地讲解了Docker,涵盖从开发环境到DevOps流水线再一路到生产环境的整个落地过程。书中介绍Docker的核心概念和架构,以及将Docker和开发环境有机、高效地结合起来的方法,包括用作轻量级的虚拟机以及与构建和宿主机编排、配置管理、精简镜像等。本书还通过“问题/解决方案/讨论”的形式,将等一系列难题拆解成101个相关的实用技巧,为读者提供解决方案以及一些实践经验。

目录

  • 版权信息
  • 版权声明
  • 内容提要
  • 译者简介
  • 前言
  • 致谢
  • 关于本书
  • 路线图
  • 代码
  • 作者在线
  • 关于封面插画
  • 第一部分 Docker基础
  • 第1章 Docker初探
  • 1.1 Docker是什么以及为什么用Docker
  • 1.1.1 Docker是什么
  • 1.1.2 Docker有什么好处
  • 1.1.3 关键的概念
  • 1.2 构建一个Docker应用程序
  • 1.2.1 创建新的Docker镜像的方式
  • 1.2.2 编写一个Dockerfile
  • 1.2.3 构建一个Docker镜像
  • 1.2.4 运行一个Docker容器
  • 1.2.5 Docker分层
  • 1.3 小结
  • 第2章 理解Docker——深入引擎室
  • 2.1 Docker的架构
  • 2.2 Docker守护进程
  • 技巧1 向世界开放Docker守护进程
  • 技巧2 以守护进程方式运行容器
  • 技巧3 将Docker移动到不同分区
  • 2.3 Docker客户端
  • 技巧4 使用socat监控Docker API流量
  • 技巧5 使用端口连接容器
  • 技巧6 链接容器实现端口隔离
  • 技巧7 在浏览器中使用Docker
  • 2.4 Docker注册中心
  • 技巧8 建立一个本地Docker注册中心
  • 2.5 Docker Hub
  • 技巧9 查找并运行一个Docker镜像
  • 2.6 小结
  • 第二部分 Docker与开发
  • 第3章 将Docker用作轻量级虚拟机
  • 3.1 从虚拟机到容器
  • 技巧10 将虚拟机转换为容器
  • 技巧11 类宿主机容器
  • 技巧12 将一个系统拆成微服务容器
  • 3.2 管理容器的服务
  • 技巧13 管理容器内服务的启动
  • 3.3 保存和还原工作成果
  • 技巧14 在开发中“保存游戏”的方式
  • 技巧15 给Docker打标签
  • 技巧16 在Docker Hub上分享镜像
  • 技巧17 在构建时指向特定的镜像
  • 3.4 进程即环境
  • 技巧18 在开发中“保存游戏”的方式
  • 3.5 小结
  • 第4章 Docker日常
  • 4.1 卷——持久化问题
  • 技巧19 Docker卷——持久化的问题
  • 技巧20 通过BitTorrent Sync的分布式卷
  • 技巧21 保留容器的bash历史
  • 技巧22 数据容器
  • 技巧23 使用SSHFS挂载远程卷
  • 技巧24 通过NFS共享数据
  • 技巧25 开发工具容器
  • 4.2 运行容器
  • 技巧26 在Docker里运行GUI
  • 技巧27 检查容器
  • 技巧28 干净地杀掉容器
  • 技巧29 使用Docker Machine来置备Docker宿主机
  • 4.3 构建镜像
  • 技巧30 使用ADD将文件注入到镜像
  • 技巧31 重新构建时不使用缓存
  • 技巧32 拆分缓存
  • 4.4 保持阵型
  • 技巧33 运行Docker时不加sudo
  • 技巧34 清理容器
  • 技巧35 清理卷
  • 技巧36 解绑容器的同时不停掉它
  • 技巧37 使用DockerUI来管理Docker守护进程
  • 技巧38 为Docker镜像生成一个依赖图
  • 技巧39 直接操作——对容器执行命令
  • 4.5 小结
  • 第5章 配置管理——让一切井然有序
  • 5.1 配置管理和Dockerfile
  • 技巧40 使用ENTRYPOINT创建可靠的定制工具
  • 技巧41 在构建中指定版本来避免软件包的漂移
  • 技巧42 用perl -p -i -e替换文本
  • 技巧43 镜像的扁平化
  • 技巧44 用alien管理外来软件包
  • 技巧45 把镜像逆向工程得到Dockerfile
  • 5.2 传统配置管理工具与Docker
  • 技巧46 传统方式:搭配make和Docker
  • 技巧47 借助Chef Solo构建镜像
  • 技巧48 从源到镜像的构建
  • 5.3 小即是美
  • 技巧49 保持构建镜像更小的Dockerfile技巧
  • 技巧50 让镜像变得更小的技巧
  • 技巧51 通过BusyBox和Alpine来精简Docker镜像
  • 技巧52 Go模型的最小容器
  • 技巧53 使用inotifywait给容器瘦身
  • 技巧54 大也可以美
  • 5.4 小结
  • 第三部分 Docker与DevOps
  • 第6章 持续集成:加快开发流水线
  • 6.1 Docker Hub自动化构建
  • 技巧55 使用Docker Hub工作流
  • 6.2 更有效的构建
  • 技巧56 使用eatmydata为I/O密集型构建提速
  • 技巧57 设置一个软件包缓存用于加快构建速度
  • 技巧58 在Docker内部运行Selenium测试
  • 6.3 容器化CI过程
  • 技巧59 包含一个复杂的开发环境
  • 技巧60 在一个Docker容器里运行Jenkins主服务器
  • 技巧61 使用Jenkins的Swarm插件扩展CI
  • 6.4 小结
  • 第7章 持续交付:与Docker原则完美契合
  • 7.1 在CD流水线上与其他团队互动
  • 技巧62 Docker契约——减少摩擦
  • 7.2 推动Docker镜像的部署
  • 技巧63 手动同步注册中心镜像
  • 技巧64 通过受限连接交付镜像
  • 技巧65 以TAR文件方式共享Docker对象
  • 7.3 为不同环境配置镜像
  • 技巧66 使用etcd通知容器
  • 7.4 升级运行中的容器
  • 技巧67 使用confd启用零停机时间切换
  • 7.5 小结
  • 第8章 网络模拟:无痛的现实环境测试
  • 8.1 容器通信——超越手工链接
  • 技巧68 一个简单的Docker Compose集群
  • 技巧69 一个使用Docker Compose的SQLite服务器
  • 技巧70 使用Resolvable通过DNS查找容器
  • 8.2 使用Docker来模拟真实世界的网络
  • 技巧71 使用Comcast模拟有问题的网络
  • 技巧72 使用Blockade模拟有问题的网络
  • 8.3 Docker和虚拟网络
  • 技巧73 使用Weave建立一个基底网络
  • 技巧74 Docker的网络与服务功能
  • 8.4 小结
  • 第四部分 生产环境中的Docker
  • 第9章 容器编排:管理多个Docker容器
  • 9.1 简单的单台宿主机
  • 技巧75 使用systemd管理宿主机上的容器
  • 技巧76 使用systemd编排宿主机上的容器
  • 9.2 多宿主机Docker
  • 技巧77 使用Helios手动管理多宿主机Docker
  • 技巧78 基于Swarm的无缝Docker集群
  • 技巧79 使用Kubernetes集群
  • 技巧80 在Mesos上构建框架
  • 技巧81 使用Marathon细粒度管理Mesos
  • 9.3 服务发现:我们有什么
  • 技巧82 使用Consul来发现服务
  • 技巧83 使用Registrator进行自动化服务注册
  • 9.4 小结
  • 第10章 Docker与安全
  • 10.1 Docker访问权限及其意味着什么
  • 你在乎吗
  • 10.2 Docker中的安全手段
  • 技巧84 限制能力
  • 技巧85 Docker实例上的HTTP认证
  • 技巧86 保护Docker API
  • 10.3 来自Docker以外的安全
  • 技巧87 OpenShift——一个应用程序平台即服务
  • 技巧88 使用安全选项
  • 10.4 小结
  • 第11章 一帆风顺——生产环境中的Docker以及运维上的考量
  • 11.1 监控
  • 技巧89 记录容器的日志到宿主机的syslog
  • 技巧90 把Docker日志发送到宿主机的输出系统
  • 技巧91 使用cAdvisor监控容器
  • 11.2 资源控制
  • 技巧92 限制容器可以运行的内核
  • 技巧93 给重要的容器更多CPU
  • 技巧94 限制容器的内存使用
  • 11.3 Docker的系统管理员用例
  • 技巧95 使用Docker来运行cron作业
  • 技巧96 通过“保存游戏”的方法来备份
  • 11.4 小结
  • 第12章 Docker生产环境实践——应对各项挑战
  • 12.1 性能——不能忽略宿主机
  • 技巧97 从容器访问宿主机资源
  • 技巧98 Device Mapper存储驱动和默认的容器大小
  • 12.2 在容器出问题时——调试Docker
  • 技巧99 使用nsenter调试容器的网络
  • 技巧100 无须重新配置,使用tcpflow进行实时调试
  • 技巧101 调试在特定宿主机上出问题的容器
  • 12.3 小结
  • 附录A 安装并使用Docker
  • A.1 虚拟机的方式
  • A.2 连接到外部Docker服务器的Docker客户端
  • A.3 原生Docker客户端和虚拟机
  • Windows上的Docker
  • A.4 获得帮助
  • 附录B Docker配置
  • B.1 重启Docker
  • B.1.1 使用systemctl重启
  • B.1.2 重启服务
  • 附录C Vagrant
  • C.1 设置
  • C.2 图形用户界面
  • C.3 内存
  • 欢迎来到异步社区!
  • 异步社区的来历
  • 社区里都有什么?
  • 购买图书
  • 下载资源
  • 与作译者互动
  • 灵活优惠的购书
  • 纸电图书组合购买
  • 社区里还可以做什么?
  • 提交勘误
  • 写作
  • 会议活动早知道
  • 加入异步
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。