docker之docker-machine用法详解

docker-machine 是docker官方提供的docker管理工具。

通过docker-machine可以轻松的做到:

  在windows平台和mac平台安装和运行docker

  搭建和管理多个docker 主机

  搭建swarm集群

环境win下面安装的virtualbox,virtualbox安装的centos7,网络模式nat+hostonly

ip:192.168.56.102(hostonly)

1、安装docker-machine:

2、查看docker-machine版本:

3、在centos7环境下创建machine:

但是却报错了,以为virtualbox安装的centos7环境支持的是virtualbox驱动,才发现环境安装支持virtualbox驱动

使用virtualbox驱动需要安装virtualbox,而ubuntu的解决方法为:

于是采用generic驱动,具体介绍查看官网:

generic-ssh-user=root vm
running pre-create checks…
creating machine…
(vm) importing ssh key…
waiting for machine to be running, this may take a few minutes…
detecting operating system of created instance…
waiting for ssh to be available…
error creating machine: error detecting os: too many retries waiting for ssh to be available. last error: maximum number of retries (60) exceeded
  –generic-ip-address=192.168.56.102:这里的ip是指本机,如果需要为其他远程docker主机安装可以改为其他docker主机ip(这里是本地创建docker-machine)

依然报错,这是由于docker-machine为本机创建machine时也需要进行ssh认证:

将密码发给自己,然后重新继续创建machine:

于是终于创建machine成功了

查看docker-machine:

查看vm的环境变量:

加载环境变量:

利用ssh登录到machine中:

现在在本地环境创建一个容器启动:

然后ssh远程到docker-machine中:

可以看见docker主机和docker-machine主机里面的容器id相同

利用docker-machine能够安装docker和创建容器

上面是本地为自己创建machine,现在为远程的docker主机创建docker-machine:
环境:centos7,192.168.101.14,vmware下面安装的docker以及docker-machine,为192.168.56.102这台docker主机创建machine:
(两个ip不同进行了转发所以可以访问(前面是vm下面的nat的静态ip,后面是virtualbox的两张网卡(nat和host only)))

1、首先将192.168.101.14和主机192.168.56.102进行ssh连接认证:

2、创建machine:

执行环境变量,进入到machine环境:

3、查看创建的machine:

可以看见在192.168.101.14环境上为远程主机192.168.56.102创建的machine

4、创建容器:

现在查看远程主机是否创建了容器:

报错原因:

由于刚刚在192.168.56.102为自己设置了machine,保留了之前machine的环境变量,虽然现在删除了,但是设置了环境变量,将刚刚设置的环境变量取消:

然后重新查看:

可以发现,为远程主机创建容器成功

现在192.168.101.14上面存在镜像centos_nginx:v4,而远程主机192.168.56.102没有该镜像,现在创建容器,看是否远程主机能够创建成功?

然后在远程主机查看:

可以看见两主机的镜像同步,也是容器也是同步的

vm下面的docker可以为virtualbox下面的docker创建容器
而更多的是本地可以为云等其他环境创建容器,通过docker-machine

在这之前192.168.101.14的images都不见了,那是因为设置machine环境变量:

执行上面将machine的环境变量取消就可以返回原来的环境了:

而如果需要返回machine环境就继续执行machine环境变量就行,这种方式很好的隔离了本地和远程镜像和容器

到此这篇关于docker之docker-machine用法详解的文章就介绍到这了,更多相关docker machine 用法内容请搜索www.887551.com以前的文章或继续浏览下面的相关文章希望大家以后多多支持www.887551.com! 

THE END
喜欢就支持一下吧
点赞9分享