zoukankan      html  css  js  c++  java
  • 揭发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就...一言能尽,失败!

    为什么失败先从怎么成功说起,一言能尽,减了一处hard code,加了3行GetSSHPort,内容从base.go来,d *BaseDriver好吧,这点legacy就别缴税了

    错误性息就不贴了没头脑和不高兴,聚焦到流程后,我在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.

  • 相关阅读:
    5-1 Leetcode中和链表相关的问题
    4-7 带有尾指针的链表:使用链表实现队列
    4.6 使用链表实现栈
    4.5 链表元素的删除
    4.4 链表的遍历、查询和修改
    4.3 为链表设置虚拟头结点dummyhead
    4.2在链表中添加元素
    4.1链表
    mybatis 力量操作参数为List的非空校验
    linux 运行和停止jar的shell 脚本
  • 原文地址:https://www.cnblogs.com/A-Z/p/233docker-machine.html
Copyright © 2011-2022 走看看