Linux下Docker安装

1 在 CentOS 6.4 上安装 docker docker当前官方只支持Ubuntu,所以在 CentOS 安装Docker比较麻烦(Issue #172)。 docker官方文档说要求Linux kernel至少3.8以上,CentOS 6.4是2.6的内核,于是我哼哧哼哧的编译安装了最新的kernel 3.11.6,重启后运行docker还是失败,最后找到原因,是因为编译时忘记集成aufs模块了。aufs 需要和 kernel 一起编译,很麻烦。 不过不需要这么麻烦,有强人已经编译好了带aufs模块的内核,见这里Installing docker.io on centos 6.4 (64-bit)

1.1 取消selinux,因为它会干扰lxc的正常功能 临时取消用setenforce 0 。 sudo vim /etc/selinux/config SELINUX=disabled SELINUXTYPE=targeted

1.2 安装 Fedora EPEL sudo yum install -y http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm

1.3 添加 hop5 repo地址 cd /etc/yum.repos.d sudo wget http://www.hop5.in/yum/el6/hop5.repo

yuminstallkernel-ml-aufs kernel-ml-aufs-devel 才能升级内核成功。

1.4 安装 docker-io sudo yum install -y docker-io 会自动安装带aufs模块的3.10内核,以及docker-io包。

1.5 将 cgroup 文件系统添加到 /etc/fstab , 只有这样docker才能正常工作 sudo echo "none /sys/fs/cgroup cgroup defaults 0 0" >> /etc/fstab #####注意 /cgroup

1.6 修改grub引导顺序 sudo vim /etc/grub.conf default=0 设置default为新安装的内核的位置,一般是0

1.7重启 sudo reboot

1.8 检查新内核是否引导成功 重启后,检查一下新内核是否引导起来了 uname -r 3.10.5-3.el6.x86_64 说明成功了 看一下 aufs是否存在 grep aufs /proc/filesystems nodev aufs 说明存在

1.9 vi /etc/cgconfig.conf 更改#memory = /cgroup/memory; 待确定

接下来我会service docker start

如果出现cannot mount cpuset to /cgroup/cpuset: Device or resource busy cgconfig 无法启动

chkconfig docker on chkconfig cgconfig on 重启。然后service docker status service cgconfig ststus 查看是否启动,如果没有启动就启动了(如果cgconfig启动错误,先stop 再start)。

#####启动 docker daemon 进程 sudo docker -d & 如果你在公司,且公司内部都是通过代理上网,则可以把代理服务器告诉docker,用如下命令(参考这里): sudo HTTP_PROXY=http://xxx:port docker -d &

1.10 下载 ubuntu 镜像 sudo docker pull centos

1.11 运行 hello world sudo docker run centos /bin/echo hello world 如果运行失败,缺少或者打开文件没有找到。把所需的目录挂载到系统中,同1.5步,重启,确认服务启动后,再次尝试。

hello world 安装成功了!!

重新开机时要重启docker cgconfig两个服务

2 在 Ubuntu 上安装 docker 见官方文档,Ubuntu Linux

更多CentOS相关信息见CentOS

专题页面 http://www.linuxidc.com/topicnews.aspx?tid=14

Docker 的详细介绍:请点这里 Docker 的下载地址:请点这里

开源项目Docker,Red Hat新的虚拟化选择 http://www.linuxidc.com/Linux/2013-10/91051.htm

dockerlite: 轻量级 Linux 虚拟化 http://www.linuxidc.com/Linux/2013-07/87093.htm

8Docker的搭建Gitlab CI 全过程详解 http://www.linuxidc.com/Linux/2013-12/93537.htm

Docker 和一个正常的虚拟机有何区别? http://www.linuxidc.com/Linux/2013-12/93740.htm

Docker 将改变所有事情 http://www.linuxidc.com/Linux/2013-12/93998.htm

转自http://www.linuxidc.com/Linux/2014-01/95512.htm

同时查看了这些链接

http://blog.csdn.net/wuzhilon88/article/details/41621285

http://blog.chinaunix.net/uid-16763274-id-1990130.html cgroup的用法解析