用 docker-machine 创建 machine 的过程很简洁,非常适合多主机环境。除此之外,Docker Machine 也提供了一些子命令方便对 machine 进行管理。其中最常用的就是无需登录到 machine 就能执行 docker 相关操作。

我们前面学过,要执行远程 docker 命令我们需要通过 -H 指定目标主机的连接字符串,比如:

docker -H tcp://192.168.56.105:2376 ps

Docker Machine 则让这个过程更简单。docker-machine env host1显示访问 host1 需要的所有环境变量:

根据提示,执行 eval $(docker-machine env host1)

然后,就可以看到命令行提示符已经变了,其原因是我们之前在$HOME/.bashrc 中配置了 PS1='[\u@\h \W$(__docker_machine_ps1)]\$ ',用于显示当前 docker host。

在此状态下执行的所有 docker 命令其效果都相当于在 host1 上执行,例如启动一个 busybox 容器:

执行 eval $(docker-machine env host2) 切换到 host2:

下面再介绍几个有用的 docker-machine 子命令:

docker-machine upgrade 更新 machine 的 docker 到最新版本,可以批量执行:

docker-machine config 查看 machine 的 docker daemon 配置:

stop/start/restart 是对 machine 的操作系统操作,而 不是 stop/start/restart docker daemon。

docker-machine scp 可以在不同 machine 之间拷贝文件,比如:

docker-machine scp host1:/tmp/a host2:/tmp/b

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 管理-管理machine(17)的更多相关文章

  1. Docker教程:dokcer machine的概念和安装

    http://blog.csdn.net/pipisorry/article/details/50920982 Docker machine介绍 做为Docker容器集群管理三剑客之一的Docker ...

  2. Docker多主机管理(八)--技术流ken

    docker多主机管理 前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的.但在真正的环境中会有多个 host,容器在这些 host 中启动.运行.停止和 ...

  3. docker集群管理

    docker集群管理 ps:docker machine     docker swarm       docker compose  在Docker Machine发布之前,你可能会遇到以下问题: ...

  4. Docker多主机管理(八)

    docker多主机管理 前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的.但在真正的环境中会有多个 host,容器在这些 host 中启动.运行.停止和 ...

  5. docker之镜像管理命令

    一.docker image 镜像管理命令 指令 描述ls 列出本机镜像build 构建镜像来自Dockerfilehistory 查看镜像历史inspect 显示一个或多个镜像详细信息pull 从镜 ...

  6. 基于zookeeper+mesos+marathon的docker集群管理平台

    参考文档: mesos:http://mesos.apache.org/ mesosphere社区版:https://github.com/mesosphere/open-docs mesospher ...

  7. paas架构之docker——容器进程管理

    1.docker进程管理 docker的进程管理命令ps的用法基本和ubuntu系统的用法一致 1.1. 查看docker进程 sudo docker ps –a 1.2. 附着到容器上 Sudo d ...

  8. Docker 的 Web 管理工具 DockerFly

    Dockerfly是基于 Docker1.12+ (Docker API 1.24+) 开发出Docker 管理工具,提供里最基本的基于 Docker 的管理功能,目的是能够方便广大Docker初学者 ...

  9. Docker集群管理(一)—— 基础docker+swarm+shipyard

    目的 学习docker的集群管理,摸索出高可用的docker微服务架构方案.本篇文章只初步的了解下swarm(docker新版已集成了swarm)的使用,了解docker的发现服务的基础方法(dock ...

随机推荐

  1. Git中三种文件状态及其转换和git适用命令

  2. window 2008/2012计划任务配置

    很多人在问我: 1.Windows Server 2008 计划任务在哪里配置? 2.Windows Server 2008 可以配置每分钟或是每小时执行我的任务吗? 答案是:可以! 首先Window ...

  3. python练习题之计算字符串中所有字符得和

    第二题:计算字符串中所有数字的和1.字符串中只有小写字母和数字2.数字可能连续,也可能不连续3.连续数字要当做一个数处s='1234adg3g11's1 = "" for i in ...

  4. (转)PAL制式和NTSC制式的区别

    转:https://www.cnblogs.com/nx520zj/articles/6061777.html 常见的电视信号制式是PAL和NTSC,另外还有SECAM等. NTSC即正交平衡调幅制. ...

  5. mysql隔离级别相关

    1.原子性.隔离性.一致性.持久性 2.mysql并发控制可能出现的问题: 脏读(A事务读取到B事务未commit的数据后,B事务回滚) 不可重复读(A事务第一次读到的数据,被B事务更新数据后,第二次 ...

  6. (66) c# async await

    1.使用 async await 2.返回值 static void Main(string[] args) { Program p = new Program(); Console.WriteLin ...

  7. NTP时钟调整策略

    一.        问题背景 天威视讯项目3月底发生了一次点播出现节目请求超时的情况,在查询故障的过程中,发现MAP服务器操作系统的时钟被向前调整了11秒,姑且不论是否是这个原因导致的故障,但每台服务 ...

  8. 测开之路二十六:Flask基础之最小web程序

    Flask中文文档:http://docs.jinkan.org/docs/flask/ 安装Flask库 选端口号的一种方法(避免和别人选的端口冲突,小于1024的时候重新选) 最小web程序 用1 ...

  9. js中浅谈this对象(未补充完整)

    什么是this? 1.javascript语言中,一切皆为对象(除了 undefined 和 null 之外),运行环境也是对象,所以函数都是在某个对象之中运行,this就是这个对象(环境). 2.t ...

  10. SimpleDateFormat 格式化时间少了12个小时

    SimpleDateFormat 格式化时间少了12个小时 标签(空格分隔): java SimpleDateFormat H:一天中的小时数:0-23 h: am/pm 小时数: 1-12 publ ...