万本电子书0元读

万本电子书0元读

顶部广告

Docker从入门到实战电子书 租阅

深度剖析Docker的核心概念、实现原理、应用技巧和生态系统 结合实际生产环境,通过实战案例提供有价值的应用参考 涵盖Docker四大管理工具的基本知识,并深分析 从三大组件门应用到集群编排阶实战,条理清晰 结合实际生产环境介绍上百个案例,内容都是有价值的干货 以Docker当前的流行版本为例讲解Swarm集群管理

售       价:¥

纸质售价:¥54.50购买纸书

471人正在读 | 2人评论 6.2

作       者:黄靖钧

出  版  社:机械工业出版社

出版时间:2017-06-01

字       数:38.8万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(2条)
  • 读书简介
  • 目录
  • 累计评论(2条)
本书从Docker的相关概念与基础知识讲起,结合实际应用,通过不同发环境的实战例子,详细介绍了Docker的基础知识与阶实战的相关内容,以引领读者快速门并提高。 本书共19章,分3篇。第1篇容器技术与Docker概念,涵盖的内容有容器技术、Docker简介、安装Docker等。第2篇Docker基础知识,涵盖的内容有Docker基础、Docker镜像、Dockerfile文件、Docker仓库、Docker容器、数据卷、网络管理等。第3篇Docker阶实战,涵盖的内容有操作系统、编排工具Compose、Web服务器与应用、数据库、编程语言、Docker API、私有仓库、集群网络、Docker安全等。 本书非常适合所有对Docker感兴趣的门新手阅读。不管是发人员还是运维人员,都可以通过本书学习Docker的基本知识。即使不是程序员的读者,本书同样适合。普通用户完全可以把Docker作为一个“好玩的工具”来使用,以体验Docker带来的便捷。 一分钟了解本书精华内容???????????????????????? 容器技术与Docker概念 认识容器技术 Docker基本概念 安装和测试Docker Docker基础知识 Docker操作命令 镜像的结构 镜像的拉取、修改与删除 镜像的体积控制 镜像的推送 容器的迁移与提交 镜像仓库 数据卷操作 容器网络操作 Docker阶实战 操作系统镜像构建 Web服务镜像构建 数据库镜像构建 Compose与Machine 编程语言 Docker API 私有仓库的部署和使用 集群网络 容器安全 Docker网络生态 本书从Docker的相关概念与基础知识讲起,结合实际应用,通过不同发环境的实战例子,详细介绍了Docker的基础知识与阶实战的相关内容,以引领读者快速门并提高。 本书共19章,分3篇。第1篇容器技术与Docker概念,涵盖的内容有容器技术、Docker简介、安装Docker等。第2篇Docker基础知识,涵盖的内容有Docker基础、Docker镜像、Dockerfile文件、Docker仓库、Docker容器、数据卷、网络管理等。第3篇Docker阶实战,涵盖的内容有操作系统、编排工具Compose、Web服务器与应用、数据库、编程语言、Docker API、私有仓库、集群网络、Docker安全等。 本书非常适合所有对Docker感兴趣的门新手阅读。不管是发人员还是运维人员,都可以通过本书学习Docker的基本知识。即使不是程序员的读者,本书同样适合。普通用户完全可以把Docker作为一个“好玩的工具”来使用,以体验Docker带来的便捷。 一分钟了解本书精华内容                         容器技术与Docker概念 认识容器技术 Docker基本概念 安装和测试Docker Docker基础知识 Docker操作命令 镜像的结构 镜像的拉取、修改与删除 镜像的体积控制 镜像的推送 容器的迁移与提交 镜像仓库 数据卷操作 容器网络操作 Docker阶实战 操作系统镜像构建 Web服务镜像构建 数据库镜像构建 Compose与Machine 编程语言 Docker API 私有仓库的部署和使用 集群网络 容器安全 Docker网络生态
【推荐语】
深度剖析Docker的核心概念、实现原理、应用技巧和生态系统 结合实际生产环境,通过实战案例提供有价值的应用参考 涵盖Docker四大管理工具的基本知识,并深分析 从三大组件门应用到集群编排阶实战,条理清晰 结合实际生产环境介绍上百个案例,内容都是有价值的干货 以Docker当前的流行版本为例讲解Swarm集群管理
【作者】
黄靖钧  全栈发者,热衷源技术。长期以来一直使用容器技术作为应用部署方案,在Docker容器实战方面经验丰富。有多年的大规模集群管理经验。曾经从事PaaS与CaaS项目发。现专注于Serverless与SDN等领域的研究。
目录展开

前言

为什么学习Docker

本书特色

本书内容体系

本书读者对象

本书配套资源及获取方式

本书作者

第1篇 容器技术与Docker概念

第1章 容器技术

1.1 什么是容器

1.1.1 关于虚拟化

1.1.2 容器的定义

1.1.3 为什么使用容器

1.2 容器技术的前世今生

1.2.1 容器技术的起源

1.2.2 容器技术的发展

1.3 容器的原理

1.3.1 从namespace说起

1.查看当前进程的namespace

2.使用clone()创建新的namespace

3.使用setns()关联一个已经存在的namespace

4.使用unshare()在已有进程上进行namespace隔离

1.3.2 认识Cgroups

1.3.3 容器的创建

1.4 容器云

1.5 容器与Docker

1.6 本章小结

第2章 Docker简介

2.1 什么是Docker

2.1.1 Docker的历史

2.1.2 Docker的现状

2.1.3 Docker的未来

2.2 Docker的功能及优缺点

2.2.1 Docker在解决什么

2.2.2 为什么选择Docker

2.2.3 Docker的缺点

2.3 Docker和虚拟机

2.3.1 Docker与虚拟机的区别

2.3.2 Docker与虚拟机的优缺点

2.4 Docker与runC

2.4.1 libcontainer与runC

2.4.2 runC的使用

2.4.3 runC原理

2.5 Docker基本架构

2.5.1 Docker Client介绍

2.5.2 Docker daemon介绍

2.5.3 Docker镜像

2.5.4 Docker容器

2.5.5 Docker仓库

2.6 本章小结

第3章 安装Docker

3.1 Linux系统

3.1.1 一键安装脚本

3.1.2 Debian发行版

1.查看内核版本

2.更新APT源

3.添加Docker的官方APT软件源

4.安装Docker

5.启动Docker

6.确认Docker运行正常

7.为非root用户授权

3.1.3 Ubuntu发行版

1.查看内核版本

2.更新APT源

3.添加Docker的官方APT软件源

4.安装Docker

5.启动Docker

6.确认Docker运行正常

7.为非root用户授权

3.1.4 Centos/Fedora发行版

3.1.5 Arch Linux发行版

3.1.6 Suse/openSUSE发行版

3.2 Windows与Mac OS系统

3.2.1 在Windows上安装原生Docker

3.2.2 在Mac OS上安装原生Docker

3.3 二进制安装

3.3.1 获取Linux二进制包

3.3.2 获取Mac OS X二进制包

3.3.3 获取Windows的二进制包

3.3.4 树莓派安装Docker

3.4 本章小结

第2篇 Docker基础知识

第4章 Docker基础

4.1 Docker基本操作

4.1.1 依附容器的docker attach命令

4.1.2 构建镜像的docker build命令

4.1.3 提交容器的docker commit命令

4.1.4 复制文件到宿主机的docker cp命令

4.1.5 创建容器的docker create命令

4.1.6 查看容器变化的docker diff命令

4.1.7 查看事件的docker events命令

4.1.8 进入容器的docker exec命令

4.1.9 导出容器的docker export命令

4.1.10 查看镜像历史的docker history命令

4.1.11 查看本地镜像的docker images命令

4.1.12 导入容器的docker import命令

4.1.13 查看Docker信息的docker info命令

4.1.14 查看各项详细信息的docker inspect命令

4.1.15 杀死容器的docker kill命令

4.1.16 导入镜像的docker load命令

4.1.17 登录仓库的docker login命令

4.1.18 登出仓库的docker logout命令

4.1.19 查看容器日志的docker logs命令

4.1.20 管理网络的docker network命令

4.1.21 管理节点的docker node命令

4.1.22 暂停容器的docker pause命令

4.1.23 查看容器端口的docker port命令

4.1.24 查看本地容器信息的docker ps命令

4.1.25 拉取镜像的docker pull命令

4.1.26 推送镜像的docker push命令

4.1.27 重命名容器的docker rename命令

4.1.28 重启容器的docker restart命令

4.1.29 删除容器的docker rm命令

4.1.30 删除镜像的docker rmi命令

4.1.31 运行容器的docker run命令

4.1.32 导出镜像的docker save命令

4.1.33 搜索镜像的docker search命令

4.1.34 管理服务的docker service命令

4.1.35 启动容器的docker start命令

4.1.36 查看容器状态的docker stats命令

4.1.37 停止容器的docker stop命令

4.1.38 管理集群的docker swarm命令

4.1.39 设置镜像标签的docker tag命令

4.1.40 查看容器进程的docker top命令

4.1.41 恢复暂停容器的docker unpause命令

4.1.42 更新容器的docker update命令

4.1.43 查看Docker版本的docker version命令

4.1.44 管理数据卷的docker volume命令

4.1.45 设置等待的docker wait命令

4.2 启动第一个Docker容器

4.3 构建第一个Docker镜像

4.4 本章小结

第5章 Docker镜像

5.1 认识镜像

5.1.1 使用docker pull拉取镜像

5.1.2 搜索镜像

5.1.3 查看镜像信息

5.2 创建镜像

5.2.1 剖析Hello World镜像

5.2.2 从Dockerfile构建镜像

5.2.3 自动构建镜像

5.2.4 提交容器为镜像

5.3 导出和导入镜像

5.3.1 导出镜像到本地文件系统

5.3.2 从本地文件系统导入镜像

5.4 发布镜像

5.4.1 发布镜像到Docker Hub

5.4.2 给镜像打上标签

5.4.3 发布到第三方镜像仓库

5.5 删除镜像

5.5.1 删除本地镜像

5.5.2 删除仓库镜像

5.6 Docker镜像扩展

5.6.1 Docker镜像里有什么

5.6.2 Docker镜像的存储方式

5.6.3 联合挂载

5.6.4 Git式管理

5.7 本章小结

第6章 Dockerfile文件

6.1 Dockerfile基本结构

6.1.1 Dockerfile基础

6.1.2 Dockerfile的书写规则

6.1.3 基础镜像信息和维护者信息

6.2 Dockerfile指令

6.2.1 指定基础镜像的FROM指令

6.2.2 设置维护者信息的MAINTAINER指令

6.2.3 执行构建命令的RUN指令

6.2.4 设置镜像环境变量的ENV指令

6.2.5 复制文件的COPY指令

6.2.6 添加文件的ADD指令

6.2.7 指定端口暴露的EXPOSE指令

6.2.8 设置镜像启动命令的CMD指令

6.2.9 设置接入点的ENTRYPOINT指令

6.2.10 设置数据卷的VOLUME指令

6.2.11 设置构建用户的USER指令

6.2.12 设置工作目录的WORKDIR指令

6.2.13 设置二次构建指令的ONBUILD指令

6.2.14 设置元数据的LABEL指令

6.2.15 设置构建变量的ARG指令

6.2.16 设置停止信号的STOPSIGNAL指令

6.2.17 检查镜像状态的HEALTHCHECK指令

6.2.18 设置命令执行环境的SHELL指令

6.3 镜像构建实战

6.3.1 收集应用信息

6.3.2 编写Dockerfile

6.3.3 设置自动构建

6.4 本章小结

第7章 Docker仓库

7.1 官方仓库Docker Hub

7.1.1 Docker Hub登录与使用

7.1.2 Docker Hub与Docker Cloud

7.2 国内镜像仓库

7.2.1 中国科学技术大学镜像仓库

7.2.2 DaoCloud镜像加速器

7.2.3 阿里云镜像加速器

7.2.4 灵雀云镜像加速器

7.2.5 时速云镜像加速器

7.2.6 网易蜂巢

7.2.7 自建镜像加速器

7.3 私有仓库

7.3.1 搭建私有仓库

7.3.2 私有仓库的使用

7.3.3 私有仓库安全性

7.4 Registry原理

7.4.1 Registry组成

7.4.2 Registry工作流程

7.5 本章小结

第8章 Docker容器

8.1 容器基本操作

8.1.1 创建容器

8.1.2 启动容器

8.1.3 后台运行容器

8.1.4 自动重启容器

8.1.5 停止与杀死容器

8.1.6 删除容器

8.1.7 查看容器信息

8.2 进入容器内部

8.2.1 使用attach进入容器

8.2.2 使用exec进入容器

8.2.3 使用nsenter进入容器

8.3 导出和导入容器

8.3.1 导出容器

8.3.2 导入容器

8.4 容器结构

8.4.1 容器格式是什么

8.4.2 容器内部结构

8.5 本章小结

第9章 数据卷

9.1 数据卷是什么

9.1.1 数据卷介绍

9.1.2 数据卷容器介绍

9.2 为容器挂载数据卷

9.2.1 挂载数据卷

9.2.2 挂载数据卷容器

9.2.3 数据卷挂载小结

9.3 备份、恢复、迁移数据卷

9.3.1 备份数据卷

9.3.2 迁移、恢复数据卷

9.4 容器数据卷扩展

9.4.1 卷插件介绍

9.4.2 Convoy的使用

9.4.3 Flocker的使用

9.5 本章小结

第10章 网络管理

10.1 Docker网络基础

10.1.1 端口映射

10.1.2 端口暴露

10.1.3 容器互联

10.2 Docker网络模式

10.2.1 none模式

10.2.2 container模式

10.2.3 host模式

10.2.4 bridge模式

10.2.5 overlay模式

10.3 Docker网络配置

10.3.1 Daemon网络参数

10.3.2 配置DNS

10.3.3 network命令

10.4 本章小结

第3篇 Docker进阶实战

第11章 操作系统

11.1 Alpine发行版

11.1.1 官方镜像

11.1.2 运行Alpine Linux

11.1.3 构建基于Alpine Linux的镜像

11.1.4 Alpine Linux软件仓库

11.2 Busybox发行版

11.2.1 官方镜像

11.2.2 运行Busybox

11.2.3 构建基于Busybox的镜像

11.3 Debian/Ubuntu发行版

11.3.1 官方镜像

11.3.2 运行Debian/Ubuntu

11.3.3 构建基于Debian/Ubuntu的镜像

11.4 CentOS/Fedora发行版

11.4.1 官方镜像

11.4.2 运行CentOS/Fedora

11.5 CoreOS发行版

11.5.1 为什么使用CoreOS

11.5.2 用Vagrant安装CoreOS

11.6 RancherOS发行版

11.6.1 为什么使用RancherOS

11.6.2 在服务器安装RancherOS

11.6.3 基于RancherOS的Docker管理

11.7 本章小结

第12章 编排工具Compose

12.1 安装Docker Compose

12.1.1 二进制安装

12.1.2 使用Python pip安装

12.2 Compose命令基础

12.2.1 指定配置文件

12.2.2 指定项目名称

12.2.3 Compose环境变量

12.2.4 构建服务镜像的build命令

12.2.5 生成DAB包的bundle命令

12.2.6 检查配置语法的config命令

12.2.7 创建服务容器的create命令

12.2.8 清理项目的down命令

12.2.9 查看事件的events命令

12.2.10 进入服务的exec命令

12.2.11 杀死服务容器的kill命令

12.2.12 查看服务容器日志的logs命令

12.2.13 暂停服务容器的pause命令

12.2.14 查看服务容器端口状态的port命令

12.2.15 查看项目容器信息ps命令

12.2.16 拉取项目镜像的pull命令

12.2.17 推送项目镜像的push命令

12.2.18 重启服务容器的restart命令

12.2.19 删除项目容器的rm命令

12.2.20 执行一次性命令的run命令

12.2.21 设置服务容器数量的scale命令

12.2.22 启动服务容器的start命令

12.2.23 停止服务容器的stop命令

12.2.24 取消暂停的unpause命令

12.2.25 启动项目的up命令

12.3 Compose配置文件

12.3.1 配置文件基础

12.3.2 基本配置

1.指定服务使用的镜像:image

2.指定构建上下文:build

3.指定服务镜像启动命令:command

4.指定运行服务的容器名称:container_name

5.指定服务依赖关系:depends_on

6.指定服务的DNS配置:dns

7.挂载临时目录:tmpfs

8.指定服务镜像的接入点:entrypoint

9.设置compose变量:env_file

10.设置环境变量:environment

11.指定端口暴露:expose

12.选择项目外的容器:external_links

13.扩展连接服务器的hosts列表:extra_hosts

14.添加元数据:labels

15.设置容器互联:links

16.配置服务日志:logging

17.指定进程空间:pid

18.设置服务容器的端口映射:ports

19.设置容器安全选项:security_opt

20.设置容器停止信息:stop_signal

21.设置容器数据卷:volumes

22.挂载数据卷容器:volumes_from

23.修改内核功能:cap_add,cap_drop

24.指定父级Cgroup:cgroup_parent

25.配置服务的设备映射:devices

26.设置服务扩展:extends

27.设置服务网络模式:network_mode

28.设置服务容器的网络:networks

29.其他标签

12.3.3 网络配置

12.3.4 配置扩展

12.4 Compose实战

12.4.1 部署Django

12.4.2 部署Rails

12.4.3 部署WordPress

12.5 本章小结

第13章 Web服务器与应用

13.1 Apache服务器

13.1.1 官方镜像

13.1.2 运行官方镜像

13.1.3 基于Ubuntu构建Apache镜像

13.1.4 基于Alpine构建Apache镜像

13.1.5 第三方优质镜像

13.2 Nginx服务器

13.2.1 官方镜像介绍

13.2.2 运行官方镜像

13.2.3 构建Nginx镜像

1.是基于Debian构建Nginx镜像

2.基于Alpine构建Nginx镜像

13.2.4 第三方镜像推荐

13.3 Tomcat服务器

13.3.1 官方镜像介绍

13.3.2 运行官方镜像

13.3.3 构建Tomcat镜像

13.4 其他Web服务器

13.4.1 Caddy服务器

13.4.2 WebLogic服务器

13.5 本章小结

第14章 数据库

14.1 MySQL数据库

14.1.1 官方镜像的剖析与使用

14.1.2 构建自己的MySQL镜像

14.2 PostgreSQL数据库

14.2.1 官方镜像的使用

1.基础应用

2.扩展应用

14.2.2 官方镜像的剖析

14.2.3 构建PostgreSQL镜像

14.2.4 数据备份与导入

14.3 Redis数据库

14.3.1 官方镜像的使用

14.3.2 构建自己的Redis镜像

14.4 MongoDB数据库

14.4.1 官方镜像的使用

14.4.2 构建自己的MongoDB镜像

14.5 其他

14.5.1 在容器中使用SQLite

14.5.2 构建自己的MariaDB镜像

14.5.3 使用Docker部署Orcale XE数据库

14.6 本章小结

第15章 编程语言

15.1 C/C++语言

15.1.1 官方镜像library/gcc

15.1.2 基于Alpine构建C/C++镜像

15.2 Golang语言

15.2.1 官方镜像library/golang

15.2.2 Beego框架

15.2.3 自助Git服务——Gogs

15.2.4 基于Alpine构建Golang镜像

15.3 Java语言

15.3.1 官方镜像library/openjdk

15.3.2 基于Alpine构建Java镜像

15.3.3 Tomcat服务器

15.3.4 下一代集成开发环境——Eclipse Che

15.4 JavaScript(Node.js)语言

15.4.1 官方镜像library/node

15.4.2 vue.js框架

15.4.3 Express框架

15.4.4 浏览器里的IDE——Cloud9-IDE

15.4.5 基于Alpine构建Node.js镜像

15.5 PHP语言

15.5.1 官方镜像library/php

15.5.2 快速安装扩展

15.5.3 LNMP环境组合

15.5.4 基于Alpine构建PHP镜像

15.5.5 自建私有云存储——ownCloud

15.5.6 Typecho博客系统

15.6 Python语言

15.6.1 官方镜像library/python

15.6.2 Flask框架

15.6.3 基于Alpine构建Python镜像

15.7 Swift语言

15.7.1 构建Swift镜像

15.7.2 Kitura框架

15.8 本章小结

第16章 Docker API介绍

16.1 认识Docker API

16.1.1 RESTful介绍

16.1.2 开启socket

16.1.3 使用curl

16.1.4 使用Postman

16.2 Docker Remote API介绍

16.2.1 容器API

1.容器列表

2.创建容器

3.监控容器

4.进程列表

5.容器日志

6.导出容器

7.启动容器

8.停止容器

9.重启容器

10.终止容器

16.2.2 镜像API

1.创建镜像

2.使用容器创建镜像

3.镜像列表

4.删除镜像

5.推送镜像

6.打上标签

7.搜索镜像

8.镜像历史

9.构建镜像

16.3 其他API

16.3.1 常用API

1.登录API

2.获取Info API

3.版本信息API

4.Daemon状态

5.事件API

6.创建exec

7.启动exec

8.显示Volume

16.3.2 Trusted Registry API介绍

16.4 本章小结

第17章 私有仓库

17.1 Docker Registry介绍

17.1.1 部署Docker Registry

17.1.2 私有仓库的push与pull

17.1.3 配置Registry

17.1.4 添加Docker Hub Mirror功能

17.2 认证与前端

17.2.1 设置反代理

17.2.2 为私有仓库添加认证服务

17.2.3 为私有仓库添加可视化界面

17.3 企业级私有仓库Harbor

17.3.1 Harbor配置详解

17.3.2 配置HTTPS

17.3.3 使用Compose启动Harbor

17.4 私有仓库前端授权工具Portus

17.4.1 一键部署Portus

17.4.2 手动配置

17.4.3 启动Portus

17.5 本章小结

第18章 集群网络

18.1 Swarm集群

18.1.1 认识Swarm

18.1.2 建立跨主机网络

18.1.3 在跨主机网络上部署应用

18.1.4 Swarm集群负载

18.2 第三方网络管理工具

18.2.1 Weave介绍

18.2.2 Flannel介绍

18.2.3 Pipwork介绍

18.3 第三方服务发现

18.3.1 Etcd介绍

18.3.2 Consul介绍

18.4 第三方集群管理

18.4.1 Kubernetes介绍

18.4.2 Mesos Shipyard介绍

18.5 本章小结

第19章 Docker安全

19.1 Docker安全机制

19.1.1 Daemon安全

19.1.2 容器与镜像安全

19.2 Docker资源控制

19.2.1 限制CPU

19.2.2 限制内存

19.2.3 限制I/O

19.2.4 文件系统防护

19.2.5 镜像瘦身神器Docker Slim

19.2.6 强制访问控制工具SELinux或AppArmor

19.3 本章小结

累计评论(2条) 2个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部