揭发233的docker/machine
继手动滑稽之golang-vmware-driver广告篇,今天把vmware-driver完成
然而我却要发一篇牢骚,这是对docker公信力的挑战!!!
本来很简单的升级到vmware 15.x的兼容vmx文件简直是小菜一碟
顺着大便,把Windows 7 + Tiny Linux 4.19 + XFS + Vmware Workstation 15 (PRO) 下篇dockerの奥义提到的知识点1涂抹了一下
这样就达成了1986年toshiba洗衣机广告那样的全自动效应:
更新driver再也不用打开VMware workstation手动停止,更新配置了,效果异常的完美
在此基础之上,配套了ssh和dockerd port,这样我又可以让各位猜猜猜了
然而ssh port配合无间,dockerd port就...一言能尽,失败!
为什么失败先从怎么成功说起,一言能尽,加了行GetSSHPort,内容从base.go来,d *BaseDriver好吧,这点就别缴税了
错误性息就不贴了没头脑和不高兴,聚焦到流程后,我在git的源码处发现了
WaitForDocker() --> provision.WaitForDocker(provisioner, engine.DefaultPort)
如果进一步检索,甚至发现
dockerPort := engine.DefaultPort
甚至又又探测出
utils_test.go dockerPort := 1234
为了颠覆印象,又找到了
GenerateDockerOptions(dockerPort int ...{ ... DOCKER_HOST='-H tcp://0.0.0.0:{{.DockerPort}}' ... engineConfigContext := EngineConfigContext{
DockerPort: dockerPort, ......
最后诧异的联想machine/drivers/azure/util.go
// getSecurityRules creates network security group rules based on driver
// configuration such as SSH port, docker port and swarm port.// Base ports to be opened for any machine
rl := []network.SecurityRule{
mkRule(100, "SSHAllowAny", "Allow ssh from public Internet", "*", fmt.Sprintf("%d", d.BaseDriver.SSHPort), network.TCP),
mkRule(300, "DockerAllowAny", "Allow docker engine access (TLS-protected)", "*", fmt.Sprintf("%d", d.DockerPort), network.TCP),
}
好吧,最终的觉悟是,对改动docker/machine我是想说NO的
machine/libmachine/provision/ 绝大多数文件的日期都是在2年前,或者4年前
至今,仍旧保持着最初的风貌,而我的新光盘和new driver配合非常默契,当然少了自定义的docker port也无所谓,至少我确认了所有的远景都在预期内
至多,不少一个port
全篇无图,希望能用心灵和文字的力量感受到视觉上新光盘和new driver的抽象
以上233的docker/machine揭发完毕
请轻声鼓掌
OVER.
揭发233的docker/machine的更多相关文章
- Docker Machine搭建并加入节点
对于集群服务器来讲,要在每台机器上手动安装Docker是一件及其痛苦的事情,还好有Docker Machine这一工具,Docker三剑客中的一角. 一.Docker Machine介绍 这个工具已经 ...
- Docker Machine v1.11.2安装与使用
官方文档:Docker Machine 官方文档:Docker Toolbox boot2docker安装包官网下载链接:Docker Toolbox-1.11.1b.exe 此安装包包含的“boot ...
- Docker Machine, Compose, and Swarm: How They Work Together
The three tools are now neatly packaged into what’s called the Docker Toolbox. Docker Machine1/ crea ...
- Docker Machine
Docker Machine http://dockone.io/article/1485?utm_source=tuicool&utm_medium=referral 本地安装与使用 Doc ...
- [Docker] Docker Machine intro
List all the docker machine: docker-machine ls Can check 'ip' and 'status': docker-machine ip defaul ...
- Docker Machine 简介
Docker Machine 是什么? Docker Machine 是 Docker 官方提供的一个工具,它可以帮助我们在远程的机器上安装 Docker,或者在虚拟机 host 上直接安装虚拟机并在 ...
- Docker Machine 详解
笔者在<Docker Machine 简介>一文中简单介绍了 Docker Machine 及其基本用法,但是忽略的细节实在是太多了.比如 Docker 与 Docker Machine ...
- 用 Docker Machine 创建 Azure 虚拟主机
搭建环境向来是一个重复造轮子的过程,Docker Machine 则把用户搭建 Docker 环境的各种方案汇集在了一起.笔者在<Docker Machine 简介>一文中演示了使用 Do ...
- 安装 Docker Machine - 每天5分钟玩转 Docker 容器技术(45)
前面我们的实验环境中只有一个 docker host,所有的容器都是运行在这一个 host 上的.但在真正的环境中会有多个 host,容器在这些 host 中启动.运行.停止和销毁,相关容器会通过网络 ...
随机推荐
- P1107 栈
题目描述 背景 栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表. 栈有两种最重要的操作,即 pop(从栈顶弹出一个元素)和 push(将一个元素进栈). 栈的重要性不言 ...
- 如何让in/exists 子查询(半连接)作为驱动表?
一哥们问我,怎么才能让子查询作为驱动表? SQL如下: select rowid rid from its_car_pass7 v where 1 = 1 and pass_datetime > ...
- 使用Python内置的smtplib包和email包来实现邮件的构造和发送。
此文章github地址:https://github.com/GhostCNZ/Python_sendEmail Python_sendEmail 使用Python内置的smtplib包和email包 ...
- Linux 基础(一)stat函数
Header file: #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> DEFI ...
- Spark in action Spark 以及SparkR的安装配置说明
Spark以及SparkR的安装(standalone模式) From :ssdutsu @ Inspur Company suzhiyuan2006@gmail.com 操作系统 CentOS 7 ...
- 为什么Redis是单线程,性能还如此高?
一. Redis为什么是单线程 注意:redis 单线程指的是网络请求模块使用了一个线程,即一个线程处理所有网络请求,其他模块仍用了多个线程. 因为CPU不是Redis的瓶颈.Redis的瓶颈最有可能 ...
- <mvc:annotation-driven /><context:annotation-config/><context:component-scan/>
<context:annotation-config/> 隐式地向 Spring容器注册AutowiredAnnotationBeanPostProcessor. RequiredAnno ...
- es6笔记 day3---数组新增东西
Array.from()的作用就是把类数组转成数组.所谓类数组,就是有长度的数组 ----------------------------------------------------------- ...
- 2019-5-31-SharpDx-进入全屏模式
title author date CreateTime categories SharpDx 进入全屏模式 lindexi 2019-5-31 9:5:36 +0800 2019-5-30 20:1 ...
- 011.MFC_Slider
滑块CSliderCtrl 常用函数SetLineSize() GetLineSize() SetPageSize() GetPageSize()SetRangeMax() GetRangeMax() ...