「走进k8s」Docker三剑客之Docker Machine(
原创文章,欢迎转载。转载请注明:转载自IT人故事会,谢谢!
原文链接地址:「走进k8s」Docker三剑客之Docker Machine(八)
上次通过wordpress的安装演示了docker-compose的一个用法,包括里面具体常用命令的详解。
![](https://img.haomeiwen.com/i11223715/7847affeae65b830.png)
(一)Docker Machine
- ①官网
![](https://img.haomeiwen.com/i11223715/073517b0dddff571.png)
- ②介绍
Docker Machine
项目基于Go
语言实现,Docker 官方提供的一个工具,它可以帮助我们在远程的机器上安装 Docker,或者在虚拟机 host 上直接安装虚拟机并在虚拟机中安装 Docker。我们还可以通过 docker-machine命令来管理这些虚拟机和 Docker。在github已经半年多不维护了。使用的场景应该是比较少的在生产中。
![](https://img.haomeiwen.com/i11223715/955c7c3286e62bf7.png)
- ③docker machine安装
linux下的安装
sudo curl -L https://github.com/docker/machine/releases/download/v0.13.0/docker-machine-`uname -s`-`uname -m` > /usr/local/bin/docker-machine
sudo chmod +x /usr/local/bin/docker-machine
docker-machine -v
![](https://img.haomeiwen.com/i11223715/2451deca9a0b8716.png)
(一)docker-machine来创建virtualbox虚拟机
- ①安装virtualbox
yum -y install kernel-devel
yum update kernel*
yum -y install wget
wget http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc
rpm --import oracle_vbox.asc
wget http://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo
yum install VirtualBox-6.0.x86_64
sudo /sbin/vboxconfig
#需要重启下kernel的需要
reboot
yum install kernel-devel
yum install kernel
![](https://img.haomeiwen.com/i11223715/fe3b1e1a9a541002.png)
- ②创建一台 Docker 主机
--engine-opt dns=8.8.8.8 配置 Docker 的默认 DNS
--engine-registry-mirror https://registry.docker-cn.com配置 Docker 的仓库镜像
--virtualbox-memory 1024 配置主机内存
--virtualbox-cpu-count 1 配置主机 CPU
docker-machine create -d virtualbox default
- ③进入Docker主机
进入主机后,基本上就是咱们熟悉的docker命令了。
docker-machine ssh default
![](https://img.haomeiwen.com/i11223715/cd3f9b5fd51174eb.png)
- ④docker常用命令解释
docker-machine 命令 主机
help 查看帮助信息
active 查看活动的Docker主机
config 输出连接的配置信息
create 创建一个Docker主机
env 显示连接到某个主机需要的环境变量
inspect 输出主机更新信息
ip 获取Docker主机地址
kill 停止某个Docker主机
ls 列出所有管理的Docker主机
regenerate-certs 为某个主机重新成功TLS认证信息
restart 重启Docker主机
rm 删除Docker主机
scp 在Docker主机之间复制文件
ssh SSH到主机上执行命令
start 启动一个主机
status 查看一个主机状态
stop 停止一个主机
upgrade 更新主机Docker版本为最新
url 获取主机的URL
(二)为什么Docker Machine
Docker Machine是当前docker运行在mac或者windows上的唯一方式,并且操作多种不同linux 系统的docker主机的最佳方式。
![](https://img.haomeiwen.com/i11223715/84dc69f199da45e9.png)
远程系统上配置多个宿主机
![](https://img.haomeiwen.com/i11223715/fd3563887b1a4a5c.png)
可以使用 Machine 在一个或多个虚拟系统上安装 Docker Engine。
![](https://img.haomeiwen.com/i11223715/025f39a5d7d036ac.png)
注意:
- 如果在虚拟机内装docker machine 会提示这个错误:Error with pre-create check: "This computer doesn't have VT-X/AMD-v enabled. Enabling it in the BIOS is mandatory"。 不允许在虚拟机安装docker machine。
- 如果是在windows或者mac安装docker主机,需要开启 VT-X/AMD-v
PS:云环境下批量部署 Docker环境,使用的比较多的是公有云和私有云上安装。命令比较简单。
docker machine就是在远程机器上安装docker的,虽然实际线上环境很少使用,在实验环境中docker machine还是非常重要的。