0x1 Docker Machine簡(jiǎn)介
Docker Machine 是一種可以讓您在虛擬主機(jī)上安裝 Docker 的工具斗锭,并可以使用 docker-machine 命令來(lái)管理主機(jī)。
Docker Machine 也可以集中管理所有的 docker 主機(jī)亭珍,比如快速的給 100 臺(tái)服務(wù)器安裝上 docker翘鸭。
Docker Machine 管理的虛擬主機(jī)可以是機(jī)上的,也可以是云供應(yīng)商有送,如阿里云柳沙,騰訊云窟赏,AWS妓柜,或 DigitalOcean。
使用 docker-machine 命令涯穷,您可以啟動(dòng)棍掐,檢查,停止和重新啟動(dòng)托管主機(jī)拷况,也可以升級(jí) Docker 客戶端和守護(hù)程序作煌,以及配置 Docker 客戶端與您的主機(jī)進(jìn)行通信。
0x2 Docker Michine安裝
安裝 Docker Machine 之前你需要先安裝 Docker蝠嘉。
Docker Mechine 可以在多種平臺(tái)上安裝使用最疆,包括 Linux 、MacOS 以及 windows蚤告。
Linux 安裝命令
[root@git ~]# 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
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 617 0 617 0 0 532 0 --:--:-- 0:00:01 --:--:-- 532
100 26.8M 100 26.8M 0 0 1448k 0 0:00:18 0:00:18 --:--:-- 2851k
[root@git ~]#
[root@git ~]# docker-machine version
docker-machine version 0.16.0, build 702c267f
[root@git ~]#
0x3 Docker Michine常見(jiàn)的命令
help 查看幫助信息
active 查看活動(dòng)的Docker主機(jī)
config 輸出連接的配置信息
create 創(chuàng)建一個(gè)Docker主機(jī)
env 顯示連接到某個(gè)主機(jī)需要的環(huán)境變量
inspect 輸出主機(jī)更新信息
ip 獲取Docker主機(jī)地址
kill 停止某個(gè)Docker主機(jī)
ls 列出所有管理的Docker主機(jī)
regenerate-certs 為某個(gè)主機(jī)重新成功TLS認(rèn)證信息
restart 重啟Docker主機(jī)
rm 刪除Docker主機(jī)
scp 在Docker主機(jī)之間復(fù)制文件
ssh SSH到主機(jī)上執(zhí)行命令
start 啟動(dòng)一個(gè)主機(jī)
status 查看一個(gè)主機(jī)狀態(tài)
stop 停止一個(gè)主機(jī)
upgrade 更新主機(jī)Docker版本為最新
url 獲取主機(jī)的URL
[root@git ~]# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
[root@git ~]#
[root@git .ssh]# docker-machine create -d generic --generic-ip-address=127.0.0.1 --generic-ssh-user=root docker-ubuntu-web-2
Running pre-create checks...
Creating machine...
(docker-ubuntu-web-2) No SSH key specified. Assuming an existing key at the default location.
Waiting for machine to be running, this may take a few minutes...
Detecting operating system of created instance...
Waiting for SSH to be available...
Detecting the provisioner...
Provisioning with centos...
b Copying certs to the local machine directory...
Copying certs to the remote machine...
Setting Docker configuration on the remote daemon...
Checking connection to Docker...
Docker is up and running!
To see how to connect your Docker Client to the Docker Engine running on this virtual machine, run: docker-machine env docker-ubuntu-web-2
[root@git .ssh]# docker-machine ls
NAME ACTIVE DRIVER STATE URL SWARM DOCKER ERRORS
docker-ubuntu-web - generic Running tcp://127.0.0.1:2376 v19.03.5
docker-ubuntu-web-1 - generic Running tcp://127.0.0.1:2376 v19.03.5
docker-ubuntu-web-2 - generic Running tcp://127.0.0.1:2376 v19.03.5
[root@git .ssh]# docker-machine env docker-ubuntu-web
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://127.0.0.1:2376"
export DOCKER_CERT_PATH="/root/.docker/machine/machines/docker-ubuntu-web"
export DOCKER_MACHINE_NAME="docker-ubuntu-web"
# Run this command to configure your shell:
# eval $(docker-machine env docker-ubuntu-web)
[root@git .ssh]#