在linux下做项目开发的同学都比较清楚什么是最痛苦,那就是给客户第一次部署系统的时候,一堆的编译、安装、配置,顺利的话,几个小时基本上可以搞定,不顺利的话,碰到缺少一个so库,哪个参数配置不对,一不小心几个晚上都不够用,这应该是一线部署的兄弟最
在linux下做项目开发的同学都比较清楚什么是最痛苦,那就是给客户第一次部署系统的时候,一堆的编译、安装、配置,顺利的话,几个小时基本上可以搞定,不顺利的话,碰到缺少一个so库,哪个参数配置不对,一不小心几个晚上都不够用,这应该是一线部署的兄弟最苦的事情了吧。就稍微想想nginx、mysql、tomcat、fastdfs这些最小的配置,也让人头痛欲裂。
还好,docker来了,去年下半年就准备尝试一下,不过我们研发环境都用的是32位Ubuntu系统,让新来的同事折腾了一个多月,没有搞定。后来也就不了了之。
今年开年,有新项目来了,就全部切换到64位的Ubuntu14.04LTS版本,一开始在研发环境中就先把mysql给用docker给虚拟化起来。
docker安装还是比较顺利的,根据docker官网的安装顺序,安装最新的lxc版本。然后就是安装base image,使用docker file/ubuntu镜像来做,基本上是比较顺利的。
然后就是安装mysql,开始也是使用dockerfile/mysql来安装,安装也顺利,配置启动之后,数据导入后也可以使用,当然也是经过了一番熟悉和折腾。
但是在使用的过程中,发现参数配置有问题,第一个是汉字显示问题,第二个是时间timeout问题,这些都要在dockfile中配置,恰恰在这里碰到了坑。
dockerfile拉下来的mysql是5.5版本,将default-character-set=utf8设置在[mysqld]中老是无法成功生成镜像,因为启动出错。
辗转反侧了好久,才发现,在5.5版本必须这个参数设置到[mysql]段中,这样才终于完成。
这一个大坑,特此记下。