新年好!
2017年2月3日
眼睛一闭一睁,一个春节过去了哈?各位吃好玩好睡好了吗?听说今天很多人开工啦,于是我终于知道了原来我初八上班是很晚的,感谢公司,感谢郭嘉,感谢MTV。
新年新气象,希望大家抓紧时间吹吹牛,然后用剩下的一年,哦不对,是90%年,去实现自己吹过的牛。
不过新年新气象倒并不是促使我想发点东西的原因,想发文章最主要的原因还是因为昨天晚上到今天又被Docker折腾到半死。
事情是这样:手上有一个小站,用Docker部署在阿里云上,操作系统选用的是无比拉风的CoreOS,就是传说中那个用Docker构建,内置Docker的系统,这个系统还有一个很NB的功能,就是会自己升级……自动升级……自动……升级。
前天晚上收到告警,网站down了。不过彼时正处在调整堵车9小时后万念俱灰的情绪中,所以没有管它。昨天回深后到晚上才又想起来这事,奇怪的是所有的服务都在跑,但是容器之前的网络都不通了。于是找资料,升级docker composer,升级composer的配置文件版本,折腾Docker新的网络模型……
算了,再讲下去估计你也看不下去了,最终的结果是我折腾了一晚上后宣布放弃,早上又折腾两个小时仍然无力回天。最终,通过阿里云的磁盘快照,将整台服务器恢复到了出故障前的版本,收工。
这件事情给了我一些以前从来没有过的感受。以前,总有人在说前端步伐太快,跟不到,而我总会置之一笑,谁让你自己不抓紧学习,还怪技术了?但这次在Docker面前,我感觉自己就像那些非专业的前端工程师一样迷茫。Docker的版本一直在不断快速迭代,一直不停有大招放出,从registry升级到网络模型,再到集成swarm、composer版本升级等等。每一个版本都很先进,每一个版本都是大招,只是对于我这个只在Docker 1.5时代接触过一点的人来说,突然间感觉自己对这个生态一无所知。
最后1,通过磁盘备份来解决问题,并不英雄。但也许在公司项目碰到同样问题的时候,这应该是首先的解决方案。难说是变成熟了还是变懒了。
最后2,备份多么重要,Gitlab事件历历在目,自己经历的事情更刻骨铭心。