前言
由于最近想把阿里云服务器上发布的内容做一下迁移,就想起之前有听说过的docker容器技术。
Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。
发现
在慢慢熟悉 docker 之后,准备将服务器的内容放到容器(container)中打包(export命令),在另外一台服务器导入(import命令)容器最后OK,然后在最终的目标服务器要安装部署 docker 环境的时候就碰了壁(真是一坑未平一坑又起啊),打包的服务器系统是 CentOS7,试验迁移的服务器也是 CentOS7,docker 环境都是 rpm 加源之后用的 yum 工具安装,迁移过程没啥问题。但是目标服务器是Ubuntu12的系统,在经历一系列 apt-get update
,安装 curl 等等的前置操作之后,用 apt-get install docker-engine
终于把docker装完了,敲一下 sudo docker --help
冒出来一大堆指令使用说明(嗯…看样子是安装成功了),然后接下来,sudo docker images
/ sudo docker ps
全都报一个错误:
Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?
弄得我真的去看了目录下的这个文件,好像没啥异常(你个糟老头子坏得很)。
解决
然后我就用 sudo cat /var/log/upstart/docker.log
,发现了问题的根源:
emm…是 linux 内核版本过低,这里说内核起码要 3.10.0 的,而我系统 linux 内核的版本是3.5.0,不支持docker,那去升级一下就好啦~
此坑分享到此。
By the way
有问题?可以给我留言或私聊
有收获?那就顺手点个赞呗~
当然,也可以到我的公众号下「6曦轩」,
回复“学习”,即可领取一份
【Java工程师进阶架构师的视频教程】~
回复“面试”,可以获得:
【本人呕心沥血整理的 Java 面试题】
回复“MySQL脑图”,可以获得
【MySQL 知识点梳理高清脑图】
由于我咧,科班出身的程序员,php,Android以及硬件方面都做过,不过最后还是选择专注于做 Java,所以有啥问题可以到公众号提问讨论(技术情感倾诉都可以哈哈哈),看到的话会尽快回复,希望可以跟大家共同学习进步,关于服务端架构,Java 核心知识解析,职业生涯,面试总结等文章会不定期坚持推送输出,欢迎大家关注~~~