Fork me on GitHub

Docker

Docker系列教程23-docker-compose常用命令

和docker命令一样,docker-compose命令也有很多选项。下面我们来详细探讨docker-compose的常用命令。 build构建或重新构建服务。服务被构建后将会以project_service 的形式标记,例如:composetest_db 。 help查看指定命令的帮助文档,该命令非常实用。docker-compose所有命令的帮助文档都可通过该命令查看。 1docker-compose help COMMAND 示例: 1docker-compos...

Docker系列教程22-docker-compose.yml常用命令

docker-compose.yml是Compose的默认模板文件。该文件有多种写法,例如Version 1 file format、Version 2 file format、Version 2.1 file format、Version 3 file format等。其中,Version 1 file format将逐步被被弃用;Version 2.x及Version 3.x基本兼容,是未来的趋势。考虑到目前业界的使用情况,本节只讨论Version 2 file f...

Docker系列教程21-Docker Compose快速入门

本节我们来探讨Compose使用的基本步骤,并编写一个简单示例快速入门。 基本步骤使用Compose大致有三个步骤: 使用Dockerfile(或其他方式)定义应用程序环境,以便在任何地方重现该环境。 在docker-compose.yml文件中定义组成应用程序的服务,以便各个服务在一个隔离的环境中一起运行。 运行docker-compose up命令,启动并运行整个应用程序。 入门示例下面笔者以之前课上用到的Eureka为例讲解Compose的基本步骤。 在m...

Docker系列教程20-安装Docker Compose

本节我们来讨论如何安装Compose。 安装ComposeCompose有多种安装方式,例如通过Shell、pip以及将Compose作为容器安装等。本书讲解通过Shell来安装的方式,其他安装方式可详见官方文档:https://docs.docker.com/compose/install/ (1) 通过以下命令自动下载并安装适应系统版本的Compose 1sudo curl -L https://github.com/docker/compose/releases...

Docker系列教程19-Docker Compose简介

经过前文讲解,我们可使用Dockerfile(或Maven)构建镜像,然后使用docker命令操作容器,例如docker run、docker kill等。 然而,使用分布式应用一般包含若干个服务,每个服务一般都会部署多个实例。如果每个服务都要手动启停,那么效率之低、维护量之大可想而知。 本章我们来讨论如何使用Docker Compose来轻松、高效地管理容器。为了简单起见,本章将Docker Compose简称为Compose。 Compose是一个用于定义和运行多容...

Docker系列教程18-用户定义网络中的内嵌DNS服务器

本节中的信息涵盖用户自定义网络中的容器的内嵌DNS服务器操作。连接到用户自定义网络的容器的DNS lookup与连接到默认bridge 网络的容器的工作机制不同。 注意 :为了保持向后兼容性, 默认bridge 网络的DNS配置保持不变, 有关默认网桥中DNS配置的详细信息,请参阅默认网桥中的DNS 。 从Docker 1.10开始,Docker daemon实现了一个内嵌的DNS服务器,它为任何使用有效name 、net-alias 或使用link 别名所创建的容...

Docker系列教程17-默认bridge网络中配置DNS

本节描述如何在Docker默认网桥中配置容器DNS。 当您安装Docker时,就会自动创建一个名为bridge 的桥接网络。 注意 : Docker网络功能 允许您创建除默认网桥之外的用户自定义网络。 有关用户自定义网络中DNS配置的更多信息,请参阅Docker嵌入式DNS 部分。 Docker如何为每个容器提供主机名和DNS配置,而无需在构建自定义Docker镜像时在内部写入主机名?它的诀窍是利用可以写入新信息的虚拟文件,在容器内覆盖三个关键的/etc 文件。 你...

Docker系列教程16-network命令

本文提供可用于与Docker网络及与网络中容器进行交互的network子命令的示例。这些命令可通过Docker Engine CLI获得。 这些命令是: docker network create docker network connect docker network ls docker network rm docker network disconnect docker network inspect 虽然不是必需的,但在尝试本节中的示例之前,先阅读 了解...

Docker系列教程15-Docker容器网络

本文是篇翻译。原文:https://docs.docker.com/engine/userguide/networking/ 本节概述了Docker默认的网络行为,包括默认情况下创建的网络类型以及如何创建用户自定义网络。 本文也描述了在单个主机或集群上创建网络所需的资源。 有关Docker如何在Linux主机上与iptables进行交互的详细信息,请参阅Docker和iptables 。 默认网络当您安装Docker时,它会自动创建三个网络,可使用docker ne...

Docker系列教程14-Docker数据持久化

容器中数据持久化主要有两种方式: 数据卷(Data Volumes) 数据卷容器(Data Volumes Dontainers) 数据卷数据卷是一个可供一个或多个容器使用的特殊目录,可以绕过UFS(Unix File System)。 数据卷可以在容器之间共享和重用 对数据卷的修改会立马生效 对数据卷的更新,不会影响镜像 数据卷默认会一直存在,即使容器被删除 一个容器可以挂载多个数据卷 注意:数据卷的使用,类似于 Linux 下对目录或文件进行 mount。...