Docker Machine簡介

全網第一菜雞發表於2020-08-05

簡介

Docker Machine 是一種可以讓您在虛擬主機上安裝 Docker 的工具,並可以使用 docker-machine 命令來管理主機。

Docker Machine 也可以集中管理所有的 docker 主機,比如快速的給 100 臺伺服器安裝上 docker。
Docker Machine 管理的虛擬主機可以是機上的,也可以是雲供應商,如阿里雲,騰訊雲,AWS,或 DigitalOcean。

使用 docker-machine 命令,您可以啟動,檢查,停止和重新啟動託管主機,也可以升級 Docker 客戶端和守護程式,以及配置 Docker 客戶端與您的主機進行通訊。

安裝

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

Docker Mechine 可以在多種平臺上安裝使用,包括 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

使用

本章透過 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 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
  • docker-machine active:檢視當前啟用狀態的 Docker 主機。

  • 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: 顯示幫助資訊

原文連結:www.runoob.com/docker/docker-machi...

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章