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

Docker Machine

Introduzione

Docker Machine è uno strumento che ti permette di installare Docker su un host virtuale e puoi utilizzare il comando docker-machine per gestire il host.

Docker Machine può anche gestire centralmente tutti gli host Docker, come installare Docker su 100 server in modo rapido.

I host virtuali gestiti da Docker Machine possono essere sia locali che fornitori di cloud, come Alibaba Cloud, Tencent Cloud, AWS o DigitalOcean.

Utilizzando il comando docker-machine, puoi avviare, controllare, fermare e riavviare il host托管, oltre a aggiornare il client e il demone Docker e configurare il client Docker per comunicare con il tuo host.

Installazione

Prima di installare Docker Machine, devi installare Docker.

Docker Machine può essere installato e utilizzato su più piattaforme, tra cui Linux, MacOS e Windows.

comando di installazione per 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

comando di installazione per 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

comando di installazione per Windows

Se sei su piattaforma Windows, puoi usare Git BASHe inserisci i seguenti comandi:

$ 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"

Controlla se l'installazione è stata eseguita con successo:

$ docker-machine version
versione di docker-machine 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-certs: 為某個主機重新生成 TLS 資訊

  • restart: 重啟指定的主機

  • rm: 刪除某台 Docker 主機,對應的虛擬機也會被刪除

  • ssh: 通過 SSH 連接到主機上,執行命令

  • scp: 在 Docker 主機之間以及 Docker 主機和本地主機之間通過 scp 遠程複製數據

  • mount: 使用 SSHFS 從電腦裝載或卸載目錄

  • start: 啟動一個指定的 Docker 主機,如果對象是一個虛擬機,該虛擬機將被啟動

  • status: 獲取指定 Docker 主機的狀態(包括:Running、Paused、Saved、Stopped、Stopping、Starting、Error)等

  • stop: 停止一個指定的 Docker 主機

  • upgrade: 將一個指定主機的 Docker 版本更新為最新

  • url: 獲取指定 Docker 主機的監聽 URL

  • version: 顯示 Docker Machine 的版本或者主機 Docker 版本

  • help: 顯示幫助信息