English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Docker Machine

简介

Docker Machine 是一种可以让您在虚拟主机上安装 Docker 的工具,并可以使用 docker-machine 命令来管理主机。

Docker Machine 也可以集中管理所有的 docker 主机,比如快速的给 100 台服务器安装上 docker。

Docker Machine 管理的虚拟主机可以是机上的,也可以是云供应商,如阿里云,腾讯云,AWS,或 DigitalOcean。

使用 docker-machine 命令,您可以启动,检查,停止和重新启动托管主机,也可以升级 Docker 客户端和守护程序,以及配置 Docker 客户端与您的主机进行通信。

安装

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

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

Linux 安装命令

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  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

macOS 安装命令

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  curl -L $base/docker-machine-$(uname -s)-$(uname -m) >/usr/local/bin/docker-machine &&
  chmod +x /usr/local/bin/docker-machine

Windows 安装命令

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

$ base=https://github.com/docker/machine/releases/download/v0.16.0 &&
  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"

查看是否安装成功:

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

使用

本章通过 virtualbox 来介绍 docker-machine 的使用方法。其他云服务商操作与此基本一致。具体可以参考每家服务商的指导文档。

1、列出可用的机器

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

$ docker-machine ls

2、创建机器

创建一台名为 test 的机器。

$ docker-machine create --driver virtualbox test
  • --driver:指定用来创建机器的驱动类型,这里是 virtualbox。

3、查看机器的 ip

$ docker-machine ip test

4、停止机器

$ docker-machine stop test

5、启动机器

$ docker-machine start test

6、进入机器

$ docker-machine ssh test

docker-machine 命令参数说明

  • docker-machine active:查看当前激活状态的 Docker 主机。

    $ docker-machine ls
    NAME ACTIVE DRIVER STATE URL
    dev       -        virtualbox Running tcp://192.168.99.103:2376
    staging   *        digitalocean Running tcp://203.0.113.81:2376
    $ echo $DOCKER_HOST
    tcp://203.0.113.81:2376
    $ docker-machine active
    staging
  • config:查看当前激活状态 Docker 主机的连接信息。

  • creat:创建 Docker 主机

  • env:显示连接到某个主机需要的环境变量

  • inspect:以 json 格式输出指定Docker的详细信息

  • ip:获取指定 Docker 主机的地址

  • kill:直接杀死指定的 Docker 主机

  • ls:列出所有的管理主机

  • provision:重新配置指定主机

  • regenerate-certsRegénérer les informations TLS pour un hôte spécifique

  • restartRedémarrer l'hôte spécifié

  • rmSupprimer un hôte Docker spécifié, le virtualiseur correspondant sera également supprimé

  • sshSe connecter à l'hôte via SSH pour exécuter des commandes

  • scpCopier des données à distance entre les hôtes Docker et entre l'hôte Docker et l'hôte local via scp

  • mountCharger ou décharger un répertoire à partir de l'ordinateur en utilisant SSHFS

  • startDémarrer un hôte Docker spécifié, si l'objet est un ordinateur virtuel, ce dernier sera démarré

  • statusObtenir l'état de l'hôte Docker spécifié (y compris : Running, Paused, Saved, Stopped, Stopping, Starting, Error) et autres

  • stopArrêter un hôte Docker spécifié

  • upgradeMettre à jour la version de Docker de l'hôte spécifié en version la plus récente

  • urlObtenir l'URL d'écoute de l'hôte Docker spécifié

  • versionAfficher la version de Docker Machine ou la version de l'hôte Docker

  • helpAfficher les informations d'aide