通过 Dockerfile 创建镜像 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 8.9k 阅读时长 ≈ 8 分钟 通过 Dockerfile 创建镜像由于 Docker 镜像的结构优势,使它的占用空间远小于普通的虚拟机镜像,而这就大幅减少了 Docker 镜像在网络或者其他介质中转移所花费的时间,进而提高了我们进行迁移部署的效率。不过,你要是以为这就是 Docker 能够快速部署的终极大招那就大错特错了。在这一小节里,我们将谈到 Docker 特有的镜像构建定义文件,也就是 Dockerfile。通过了解它,你能真正体验一种进行秒级镜像迁移的乐趣。 阅读全文 »
常用的 Docker Compose 配置项 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 4.7k 阅读时长 ≈ 4 分钟 常用的 Docker Compose 配置项与 Dockerfile 一样,编写 Docker Compose 的配置文件是掌握和使用好 Docker Compose 的前提。编写 Docker Compose 配置文件,其本质就是根据我们所设计的应用架构,对不同应用容器进行配置并加以组合。在这一节中,我们就来谈谈如何编写 Docker Compose 的配置文件,了解其中常见配置项的使用方法。 阅读全文 »
使用 Docker Compose 管理容器 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 5.1k 阅读时长 ≈ 5 分钟 使用 Docker Compose 管理容器通过之前的介绍,我们已经基本掌握了构建、运行容器的方法,但这还远远不够,由于 Docker 采用轻量级容器的设计,每个容器一般只运行一个软件,而目前绝大多数应用系统都绝不是一个软件所能组成的。虽然我们之前提到了容器间互相连接、交换数据的各种方法,通过这些方法足以搭建起完整的用于应用系统运行的容器群,但是这显然还不够,这个容器群的搭建需要执行太多命令,更重要的是需要考虑太多应用和容器间的依赖关系处理,是一波令人头大的操作。在这一节中,我们就来介绍如何解决这些问题。 阅读全文 »
应用于服务化开发 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 3.6k 阅读时长 ≈ 3 分钟 应用于服务化开发上一节里我们谈到了小型的独立项目如何使用 Docker Compose 来搭建程序的运行环境,对于由多人或多部门参与的中大型服务化架构的项目,仅由一个 Docker Compose 项目来管理它们的运行环境显然是不切实际的。在这一小节里,我们就谈谈如何在服务化开发中合理利用 Docker 来搭建环境。 阅读全文 »
编写 Docker Compose 项目 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 5.1k 阅读时长 ≈ 5 分钟 编写 Docker Compose 项目通过阅读之前的小节,相信大家对 Docker 在开发中的应用已经有了一定的了解。作为一款实用的软件,我们必须回归到实践中来,这样才能更好地理解 Docker 的实用逻辑和背后的原理。在这一小节里,我们就举一个完整的例子,让大家跟随这个项目的脉络,熟悉如何通过 Docker 和 Docker Compose 来搭建应用开发环境。 阅读全文 »
这是 Docker 的简历 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 5.5k 阅读时长 ≈ 5 分钟 这是 Docker 的简历在了解虚拟化和容器技术后,我们就更容易理解 Docker 的相关知识了。在这一小节中,我将介绍关于 Docker 的出现和发展,Docker 背后的技术。同时,我们将阐述 Docker 在虚拟化领域中的定位以及其带来的变革。 阅读全文 »
为容器配置网络 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 7.9k 阅读时长 ≈ 7 分钟 为容器配置网络在互联网时代,网络已经成为绝大多数应用进行数据交换的主要通道,Docker 作为集群部署的利器,在网络支持上也下了许多功夫。功能丰富和强大,并不代表使用复杂,在 Docker 的封装下,我们依然可以通过命令和参数轻松的为容器制定不同的网络方案。在这一节中,我们就来了解 Docker 的网络部分。 阅读全文 »
管理和存储数据 发表于 2020-11-18 更新于 2020-11-21 分类于 Docker 本文字数: 8.3k 阅读时长 ≈ 8 分钟 管理和存储数据数据是应用程序重要的产出,所以很好的管理和存储数据,是对应用程序劳动结果的尊重。特别是在大数据时代,所有的数据都是重要的资产,保护好数据是每个开发者必须掌握的技能。我们知道,在 Docker 里,容器运行的文件系统处于沙盒环境中,与外界其实是隔离的,那么我们又要如何在 Docker 中合理的通过文件与外界进行数据交换呢?在这一小节中,我们就来介绍 Docker 中与文件数据有关的内容。 阅读全文 »
LeetCode 508. Most Frequent Subtree Sum 发表于 2020-11-16 更新于 2020-11-20 分类于 leetcode 本文字数: 1.1k 阅读时长 ≈ 1 分钟 题目描述给定一棵树的树根,统计出现频率最高的 “子树和” 。一个结点的 “子树和” 定义为以该结点给根结点的子树所有结点的和(包括该结点本身)。所以频率最高 “子树和” 是哪些?如果出现多个,以任何顺序返回所有出现频率最高的值。 阅读全文 »
Parent and Child used in Elasticsearch 发表于 2020-11-15 更新于 2020-11-20 分类于 Elastic 本文字数: 4.1k 阅读时长 ≈ 4 分钟 Elasticsearch 父子关系Elasticsearch的Parent和Child非常有利于我们进行关联查询,父子关系的查询在一定的场合下使用能加快我们的索引速度。由于ElasticSearch不是关系数据库,它只与搜索效率有关,与存储效率无关。存储的数据已被非规范化。这意味着联接不能跨索引,子文档和父文档必须位于相同的索引和相同的分片中。 阅读全文 »