[云原生专题-15]:容器 - docker主机管理工具-docker machine

网友投稿 240 2022-10-21

[云原生专题-15]:容器 - docker主机管理工具-docker machine

作者主页(​​文火冰糖的硅基工坊​​​):​​文火冰糖(王文兵)的博客_文火冰糖的硅基工坊​

​目录​

​​前言:​​

​​第1章 什么是docker machine​​

​​1.1 Docker machine教程​​

​​1.2 Docker Machine概述​​

​​1.3 Docker Machine系统架构​​

​​第2章 docker machine工具的安装​​

​​2.1 前置条件​​

​​2.2 Linux 安装命令​​

​​2.3 macOS 安装命令​​

​​2.4 Windows 安装命令​​

​​2.5 命令行查看是否安装成功:​​

​​第3章 docker machine的使用​​

​​3.1 列出docker machine工具当前管辖下的所有虚拟机​​

​​3.2 创建新的虚拟机​​

​​3.3 查看docker主机的 ip​​

​​3.4 停止docker主机(docker machine)​​

​​3.5 启动docker主机(docker machine)​​

​​3.6 进入docker主机(docker machine) ​​

​​第4章 docker-machine 工具其他的命令参数说明​​

前言:

在基于微服务+docker的应用中,我们会面临着大量的微服务,而这些微服务并不是部署在单一机器的host machine,基于微服务的应用,无论是微服务,还是部署微服务的host machine,都是可以弹性扩展或收缩的。为了能够方便、快速的创建可以部署docker的主机,为了能够方便、快速地在这些主机上部署docker应用,docker提供了 docker主机管理工具-docker machine。

在没有docker machine工具​之前​,程序员现在自己开发docker应用程序,然后手工登录到远程的云平台,创建新的云主机或其他虚拟机,然后再把应用程序部署到新的云主机或虚拟机上。

在有了docker machine工具​之后​,程序员就可以在自己的本地,通过docker machine工具,在本地批量创建大量的远程虚拟机,并对他们进行远程管理;同时可以在这些虚拟机上创建docker的环境,包括docker daemon;最后还可以在这些机器上部署docker应用程序。

因此,docker machine实际是运维管理工具,用于对运行docker的机器进行过管理。

第1章 什么是docker machine

1.1 Docker machine教程

​​Docker Machine | 菜鸟教程​​

1.2 Docker Machine概述

Docker Machine既指的是:能够运行docker的主机Host machine。

Docker Machine也指的是:能够管理docker host machine的工具。

Docker Machine 可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker。

Docker Machine 是一个主机管理工具,它允许你在​虚拟​宿主机上安装Docker,并使用docker-machine命令管理这个宿主机​(必须是虚拟的,还可以管理),​可以使用Docker Machine在本地的虚拟机上(如MAC或者windows box、公司网络,数据中心)或者AWS这样的云提供商提供的​云主机​上创建docker。

使用docker-machine命令,可以实现三级的管理:

第一级:可以集中管理所有的docker主机。第二级:可以集中升级Docker客户端和守护程序,并配置docker客户端和宿主机通信。第三级:可以集中启动、审查、停止、重启被托管在所有主机上的所有docker

Docker Machine 是Docker官方编排项目之一,使用go语言编写的,除了支持本地的virtualbox,它还使用不同引擎,支持在​多种云平台上​快速的安装Docker环境,开源地址:​​GitHub - docker/machine: Machine management for a container-centric world​​。

目前支持的云平台有:

1.3 Docker Machine系统架构

第2章 docker machine工具的安装

2.1 前置条件

安装 Docker Machine 之前你需要先安装 Docker。

Docker Machine 可以在多种平台上安装使用,包括 Linux 、MacOS 以及 windows。

目前docker machine这个工具,还没有集成到docker中,因此需要通过github下载相关的软件:

Linux 安装命令

$ base=&& curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/tmp/docker-machine && sudo mv /tmp/docker-machine /usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine

2.3 macOS 安装命令

$ base=&& curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine && chmod +x /usr/local/bin/docker-machine

2.4 Windows 安装命令

(1)命令行方式:

如果你是 Windows 平台,可以使用 ​​Git BASH​​,并输入以下命令:

$ base=&& mkdir -p "$HOME/bin" && curl -L $base/docker-machine-Windows-x86_64.exe > "$HOME/bin/docker-machine.exe" && chmod +x "$HOME/bin/docker-machine.exe"

(2)IE浏览器方式:

命令行查看是否安装成功:

$ docker-machine versiondocker-machine version 0.16.0, build 9371605

第3章 docker machine的使用

本章通过在Linux开发主机上,通过docker machine工具,创建本地的virtualbox虚拟机的方式,来介绍 docker-machine 的使用方法。其他云服务商操作与此基本一致。

3.1 列出docker machine工具当前管辖下的所有虚拟机

可以看到目前只有这里默认的 default 虚拟机。

$ docker-machine ls

3.2 创建新的虚拟机

创建一台名为 test 的机器。

$ docker-machine create --driver virtualbox test

​--driver​:指定用来创建的虚拟机类型,这里是 本地的virtualbox虚拟机。也可以是支持云厂商的云主机。

3.3 查看docker主机的 ip

$ docker-machine ip test

3.4 停止docker主机(docker machine)

$ docker-machine stop test

3.5 启动docker主机(docker machine)

$ docker-machine start test

3.6 进入docker主机(docker machine)

$ docker-machine ssh test

备注:

进入docker主机后,就可以在docker主机上安装和操作:

docker clientg、daemon等docker的环境docker的镜像

关于如何通过docker clienbt的命令操作docker环境,请参考docker的其他文章。

第4章 docker-machine 工具其他的命令参数说明

​docker-machine active​:查看当前激活状态的 Docker 主机。$ docker-machine lsNAME ACTIVE DRIVER STATE URLdev - virtualbox Running tcp://192.168.99.103:2376staging * digitalocean Running tcp://203.0.113.81:2376$ echo $DOCKER_HOSTtcp://203.0.113.81:2376$ docker-machine activestaging​config​:查看当前激活状态 Docker 主机的连接信息。​create​:创建 Docker 主机​env​:显示连接到某个主机需要的环境变量​inspect​: 以 json 格式输出指定Docker的详细信息​ip​: 获取指定 Docker 主机的地址​kill​: 直接杀死指定的 Docker 主机​ls​: 列出所有的管理主机​provision​: 重新配置指定主机​regenerate-certs​: 为某个主机重新生成 TLS 信息​restart​: 重启指定的主机​rm​: 删除某台 Docker 主机,对应的虚拟机也会被删除​ssh​: 通过 SSH 连接到远程的docker主机上,然后就可以执行docker命令了 。​scp​: 在 Docker 主机之间以及 Docker 主机和本地主机之间通过 scp 远程复制数据​mount​: 使用 SSHFS 从计算机装载或卸载目录​start​: 启动一个指定的 Docker 主机,如果对象是个虚拟机,该虚拟机将被启动​status​: 获取指定 Docker 主机的状态(包括:Running、Paused、Saved、Stopped、Stopping、Starting、Error)等​stop​: 停止一个指定的 Docker 主机,stop后的docker主机,还可以重新start​upgrade​: 将一个指定主机的 Docker 的版本更新为最新​url​: 获取指定 Docker 主机的监听URL​version​: 显示 Docker Machine 的版本或者主机 Docker 版本​help​: 显示帮助信息

作者主页(​​文火冰糖的硅基工坊​​​):​​文火冰糖(王文兵)的博客_文火冰糖的硅基工坊​

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:SpringBoot项目打成War布署在Tomcat的详细步骤
下一篇:[云原生专题-14]:容器 - 批量定义、构建、运行多个微服务- docker编排工具Compose
相关文章

 发表评论

暂时没有评论,来抢沙发吧~