一. Docker Machine
二. Docker Compose
2.1 简介
2.2 实战(明天再总结)
三. Docker Swarm
一. Docker Machine
主要解决从 0 到 Docker。比如说我有 10 台 Docker 主机,那么 最后可以在一台机子上管理这 10 台 Docker 主机,包括其 Docker 创建等。 最后,可以和 Docker Swarm 进行集成,创建一个 Docker 的集群。
总的来说,Docker Machine 是用来管理分布式Docker 主机的。
如果没有 Docker Machine:
那么在分布式 中,我们需要登录每个主机,安装Docker,并且需要开发一套工具来管理 每个Docker 主机的一些状况,最后,你在本地开发,最后部署到公有云平台,希望能尽量减少这两者的差异。 可以让下图的模式得到最大的简化:
Ps:目前还没涉及到 分布式的Docker 主机,暂时不考虑这个,知道些概念即可。
二. Docker Compose
2.1 Docker Compose 简介:
Docker Compose 主要用来 定义 和 运行 多个 Docker 容器的工具。
主要通过 docker-compose.yml 文件和 docker-compose up 命令 来管理
Docker Compose 可以包含以下的内容:
镜像:
- Image:ubuuntu:latest
- build:/path/to/build/dir
- dockerfile : 使用指定的 Dockerfile
- command:覆盖默认命令。
容器配置:
- links:
- -db : database //服务的名字:别名
- external_links:
- -project_redis_1 //可以去连接一个不是由docker compose 来管理的一个 镜像。
- ports:
- -”3000” //不指明主机端口,那么会随机分配一个主机的端口。
- -“8080:3000”
- expose:
- -”3000”
- volumes:
- - . : /code //意思是把当前目录挂载container 的 到 /code 目录下
- environments:
- -MYSQL_USER=mysql
写 .yml 文件的一个好处:
- 可以到处 复制使用, 如果我们在终端中 docker run 接上一大截 参数,复制有可能会出错什么的。
- 可以声明多个 .yml 文件。
Docker Compose 命令集:
- 管理镜像: build / pull。
- 管理服务:up / start / stop / kill / rm / scale /
- 服务状态:ps / logs / port
- 一次性运行: run
2.2 Docker Compose 实战:
三. Docker Swarm
Docker Swarm 主要用来管理 Docker 主机集群,2014.12月 才出的一个新技术。
一开始我们是在单机上运行 Docker,如下图:
分布式后,我们会改成这种模式:
Ps:目前还没涉及到 分布式的Docker 主机,暂时不考虑这个,知道些概念即可。
版权声明:本文为u014077165原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。