Docker 管理工具

一. 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 主机的一些状况,最后,你在本地开发,最后部署到公有云平台,希望能尽量减少这两者的差异。 可以让下图的模式得到最大的简化:

Docker 管理工具_第1张图片

Ps:目前还没涉及到 分布式的Docker 主机,暂时不考虑这个,知道些概念即可。


二. Docker Compose
2.1 Docker Compose 简介:

          Docker Compose 主要用来 定义 和 运行 多个 Docker 容器的工具
          主要通过 docker-compose.yml  文件和 docker-compose up 命令 来管理 

Docker Compose 可以包含以下的内容:

镜像:
  1. Image:ubuuntu:latest
  2. build:/path/to/build/dir
  3. dockerfile : 使用指定的 Dockerfile
  4. command:覆盖默认命令。

容器配置:     
  1. links:
    1. -db : database                 //服务的名字:别名
  2. external_links:
    1. -project_redis_1               //可以去连接一个不是由docker compose 来管理的一个 镜像。
  3. ports:
    1. -”3000”       //不指明主机端口,那么会随机分配一个主机的端口。
    2. -“8080:3000” 
  4. expose:
    1. -”3000”   
  5. volumes:
    1. - . : /code                     //意思是把当前目录挂载container 的 到 /code 目录下 
  6. environments:
    1. -MYSQL_USER=mysql

写  .yml 文件的一个好处:
  1. 可以到处 复制使用, 如果我们在终端中 docker run 接上一大截 参数,复制有可能会出错什么的。
  2. 可以声明多个 .yml 文件。

Docker Compose 命令集:
  1. 管理镜像: build / pull。
  2. 管理服务:up / start / stop / kill / rm / scale /   
  3. 服务状态:ps / logs / port 
  4. 一次性运行: run

   2.2 Docker Compose 实战:


三. Docker Swarm
         Docker Swarm 主要用来管理 Docker 主机集群,2014.12月 才出的一个新技术。
          一开始我们是在单机上运行 Docker,如下图: 
Docker 管理工具_第2张图片
          分布式后,我们会改成这种模式:
Docker 管理工具_第3张图片

Ps:目前还没涉及到 分布式的Docker 主机,暂时不考虑这个,知道些概念即可。




你可能感兴趣的:(运维,Docker,DockerCompose,DockerMachine,DockerSwarm)