我去,都没有正经回复呀。我也来水一贴。
讲 docker 应该不可避免讨论一下 另一个 vagrant。这也是一个环境的抽象和封装。
我一直认同这句话,系统应该是对用户透明的。在桌面系统上,用户的目的是为了写文档,聊天,看电影,他不应该在乎什么样的OS支撑着这样的服务。而在服务器是上面,我其实比如是需要一个lamp环境,至于怎么由一台裸 linux 到有这个环境的服务器,是不应该有我关心的。
所以vagrant直接分配有环境的box,在公司里面,开发封装好环境给测试,给运维,具体的过程是不需要(不值当)人去处理的。
这个就是后半部分说讲到的玄学了,所谓状态的切换过程我不关心,我们只希望量子力学里面的跳变,一个状态直接跳转到另一个就好啦。
写程序的时候偶尔也会接触到写配置,据说某些公司实习生一开始的工作就是维护一份配置。其实改配置也是在参与到编程之中啊!? 如果上层的程序抽象的足够,下层的确就是在改一份配置而已。
类似测试qtp 提出数据驱动,其实就是一张表,给出一份对应关系。这是不是很像之后运维人员的工作呢。用一份配置来改机器。
这说道最后,又是数据即代码。酷壳上面两篇文章讲的挺好:
http://coolshell.cn/articles/10337.htmlhttp://coolshell.cn/articles/10652.html===
不过,真心解决问题的时候,有时候又会发现,哎,配置里面要有个判断!!!要有个循环!!!肿么办, dirty hack 出现!!!!