由浅入深吃透 Docker

课程简介:

 今天分享的内容第一课时就先聊聊 Docker 的基础内容, Docker 能做什么?怎么安装 Docker 以及容器技术的原理。众所周知, Docker 是一个用于开发、发布和运行应用程序的开放平台。通俗的讲, Docker 类似于集装箱,在一艘大船上,各种货物要想被整齐摆放,并且相互不受影响,我们就需要把各种货物进行集装箱标准化。有了集装箱,我们就不需要专门运输水果或者化学用品的船了,我们可以把各种货品通过集装箱打包,然后统一放到一艘船上运输。 Docker 要做的就是把各种软件打包成一个集装箱,然后分发,且在运行的时候可以相互隔离,到此相信你已经迫不及待想要体验下了。下面就让我们来安装一个 Docker 是跨平台的解决方案,它支持在当前主流的各大平台安装,包括乌班图、 red head center、 o s debin 等 links 发行,That Tongshi Yeh is an OSX, Microsoft。
Windows 等非 Linux 平台下安装使用?因为 Linux 是 Docker 的原生支持平台,所以推荐你在 Linux 上使用Docker。由于生产环境中我们使用 Sytos 较多,下面主要针对在 Symos 平台下安装和使用 Docker 展开介绍,要安装Docker,我们需要 center S7 及以上的发行版本,建议使用 Overlay two 存储驱动程序。
如果你已经安装过旧版的Docker,可以先执行以下命令,卸载旧版Docker。首次安装 Docker 之前需要添加 Docker 安装源,添加之后我们就可以从已经配置好的源安装和更新Docker。添加 Docker 安装源的命令如下,正常情况下,直接安装最新版本的 Docker 即可,因为最新版本的 Docker 有着更好的稳定性和安全性。你可以使用以下命令安装最新版本的Docker。如果你想要指定版本的Docker,也可以使用以下命令,然后选取想要的版本执行以下命令。安装完成后使用以下命令启动Docker。
这里有一个国际惯例,安装完成后,我们需要使用以下命令启动一个 holoworld 的容器。运行上述命令, Docker 首先会检查本地是否有 hello world 这个镜像,如果发现本地有这个镜像, Docker 就会去 Docker Hub 官方仓库下载此镜像,然后运行它。最后我们看到该镜像输出 hello from doctor 并退出。安装完Docker,先不着急使用,先来了解一下容器的技术原理,这样才能知其所以然。提提容器就不得不说 Chin root,因为 Chin root 是最早的容器雏形。 Chin root 意味着切换根目录,有了 Chin root 就意味着我们可以把任何目录更改为当前进程的根目录,这与容器非常相似。下面我们通过一个实例来了解一下 qinroot 什么是 Chin root?下面是 Chin root 维基百科定义,通俗地讲,侵 root 就是可以改变某进程的根目录,使这个进程不能访问目录之外的其他目录。这个跟我们在一个容器中是很相似的。下面我们通过一个实例来演示一下新root。
首先我们在当前目录下创建一个 root FS 目录。这里为了方便演示,我们使用现成的 busybox 镜像来创建一个系统镜像的概念和组成,后面我会详细讲解。如果你没有 Docker 基础,可以把下面的操作命令理解成 root f s 下创建了一些目录和泛指了一些二进制文件。
执行完上面的命令后,在 root f s 目录下我们会得到一些目录和文件,下面我们使用 l s 命令查看一下 root f s 目录下的内容,可以看到我们在 root f s 目录下初始化的一些目录。下面让我们通过一条命令来见证 qinroot 的神奇之处。
使用以下命令可以启动一个 SH 进程,并且把 home center s 入在 FS 作为 SH 进程的根目录。此时我们的命令行窗口已经处于上述命令的 SH 进程中。在当前 SH 命令的窗口下,我们使用 LS 命令查看一下当前进程,那是否真的以主机上的其他目录隔离开了。这里可以看到,当前进程的根目录已经变成了主机上的 home center s route F s 目录,这样就实现了当前进程以主机的隔离。
到此为止,一个目录隔离的容器就完成了,但是此时还不能称之为一个容器。为什么呢?你可以在上一步执行以下命令,查看如下路由信息,执行 IP root 命令后,你可以看到网络信息并没有隔离。实际上进程等信息此时也并未隔离。要想实现一个完整的容器,我们还需要 Linux 的其他三项技术,namespace, seed groups 和联合文件系统。
Docker 是利用 Linux 的namespace、seed、 groups 和联合文件系统三大机制来保证实现的,所以它的原理是使用 namespace 做主机名、网络、 PID 等资源的隔离。使用 seed groups 对进程或者进程组做资源的限制。联合文件系统用于镜像构建和容器运行环境。后面我会对这些技术进行详细讲解,这里我就简单解释一下它们的作用。

课程截图:

课程目录 :

开篇词溯本求源,吃透Docker!.mp4
01Docker安装:入门案例带你了解容器技术原理.mp4
02核心概念:镜像、容器、仓库,彻底掌握Docker架构核心设计理念.mp4
03镜像使用:Docker环境下如何配置你的镜像?.mp4
04容器操作:得心应手掌握Docker容器基本操作.mp4
05仓库访问:怎样搭建属于你的私有仓库?.mp4
06最佳实践:如何在生产中编写最优Dockerfile?.mp4
07Docker安全:基于内核的弱隔离系统如何保障安全性?.mp4
08容器监控:容器监控原理及cAdvior的安装与使用.mp4
09资源隔离:为什么构建容器需要Namepace?.mp4
10资源限制:如何通过Cgroup机制实现资源限制?.mp4
11组件组成:剖析Docker组件作用及其底层工作原理.mp4
12网络模型:剖析Docker网络实现及Libnetwork底层原理.mp4
13数据存储:剖析Docker卷与持久化数据存储的底层原理.mp4
14文件存储驱动:AUFS文件系统原理及生产环境的最佳配置.mp4
15文件存储驱动:Devicemapper文件系统原理及生产环境的最佳配置.mp4
16文件存储驱动:OverlayFS文件系统原理及生产环境的最佳配置.mp4
17原理实践:自己动手使用Golang开发Docker(上).mp4
18原理实践:自己动手使用Golang开发Docker(下).mp4
19如何使用DockerCompoe解决开发环境的依赖?.mp4
20如何在生产环境中使用DockerSwarm调度容器?.mp4
21如何使Docker和Kubernete结合发挥容器的最大价值?.mp4
22多阶段构建:Docker下如何实现镜像多阶级构建?.mp4
23DevOp:容器化后如何通过DevOp提高协作效能?.mp4
24CICD:容器化后如何实现持续集成与交付?(上).mp4
25CICD:容器化后如何实现持续集成与交付?(下).mp4
结束语展望未来:Docker的称霸之路.mp4
文档
开篇词溯本求源,吃透Docker!.md
01Docker安装:入门案例带你了解容器技术原理.md
02核心概念:镜像、容器、仓库,彻底掌握Docker架构核心设计理念.md
03镜像使用:Docker环境下如何配置你的镜像?.md
04容器操作:得心应手掌握Docker容器基本操作.md
05仓库访问:怎样搭建属于你的私有仓库?.md
06最佳实践:如何在生产中编写最优Dockerfile?.md
07Docker安全:基于内核的弱隔离系统如何保障安全性?.md
08容器监控:容器监控原理及cAdvior的安装与使用.md
09资源隔离:为什么构建容器需要Namepace?.md
10资源限制:如何通过Cgroup机制实现资源限制?.md
11组件组成:剖析Docker组件作用及其底层工作原理.md
12网络模型:剖析Docker网络实现及Libnetwork底层原理.md
13数据存储:剖析Docker卷与持久化数据存储的底层原理.md
14文件存储驱动:AUFS文件系统原理及生产环境的最佳配置.md
15文件存储驱动:Devicemapper文件系统原理及生产环境的最佳配置.md
16文件存储驱动:OverlayFS文件系统原理及生产环境的最佳配置.md
17原理实践:自己动手使用Golang开发Docker(上).md
18原理实践:自己动手使用Golang开发Docker(下).md
19如何使用DockerCompoe解决开发环境的依赖?.md
20如何在生产环境中使用DockerSwarm调度容器?.md
21如何使Docker和Kubernete结合发挥容器的最大价值?.md
22多阶段构建:Docker下如何实现镜像多阶级构建?.md
23DevOp:容器化后如何通过DevOp提高协作效能?.md
24CICD:容器化后如何实现持续集成与交付?(上).md
25CICD:容器化后如何实现持续集成与交付?(下).md
结束语展望未来:Docker的称霸之路.md

下载权限

查看
  • 免费下载
    评论并刷新后下载
    登录后下载

查看演示

  • {{attr.name}}:
您当前的等级为
登录后免费下载登录 小黑屋反思中,不准下载! 评论后刷新页面下载评论 支付以后下载 请先登录 您今天的下载次数(次)用完了,请明天再来 支付积分以后下载立即支付 支付以后下载立即支付 您当前的用户组不允许下载升级会员
您已获得下载权限 您可以每天下载资源次,今日剩余
编程与开发

产品体验设计思维与实操

2022-4-15 14:39:14

编程与开发

极客大学-算法训练营第四期(完结)推荐学习等系列课

2022-4-19 8:02:45

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
有新私信 私信列表
搜索