在CentOS系统中安装Docker的教程

最近折腾centos6,需要在其上配置docker,而以前都是在ubuntu上玩的,网上的文章没有找到一个让我直接能配成功的,多少都会有些坑,综合了几篇文章,折腾了老久,终于成功了。

我保证你按我下面的步骤一步步做,一定能一次成功!
1、因为selinux和LXC有冲突,所以需要禁用

代码如下:

# vi /etc/selinux/config
SELINUX=disabled

2、配置Fedora EPEL 源

代码如下:

# yum install http://ftp.riken.jp/Linux/fedora/epel/6/i386/epel-release-6-8.noarch.rpm

3、配置hop5.in源

代码如下:

# cd /etc/yum.repos.d
# wget http://www.hop5.in/yum/el6/hop5.repo
# yum install kernel-ml-aufs kernel-ml-aufs-devel (yum安装带aufs模块的3.10内核)

4、安装docker-io

代码如下:

# yum install docker-io

6、要想docker正常运行还需要在/etc/fstab里增加cgroup文件系统

代码如下:

# echo "none /sys/fs/cgroup cgroup defaults 0 0" >> /etc/fstab
# mount /sys/fs/cgroup

只有重新启动才能挂载/sys/fs/cgroup(因为当前运行的内核不支持cgroup),所以上面挂载的命令也可以不执行,但系统需要重新启动。

7、重启系统,选择“3.10.5-3.el6.x86_64”内核

8、系统启动后,确认当前运行的内核

代码如下:

# uname -r
3.10.5-3.el6.x86_64
# grep aufs /proc/filesystems
nodev aufs

9、以守护模式运行docker.io(在一个新的终端里)

代码如下:

# docker -d

10、重置docker的运行环境,从而解决上述问题。

代码如下:

# pkill docker
# iptables -t nat -F
# ifconfig docker0 down
# brctl delbr docker0
# docker -d

安装了新的内核,就存在启动时的选择问题,这个要通过修改/boot/grub/grub.conf文件来实现。
grub.conf 文件参数意义

代码如下:

default=1 # 默认启动的内核title, 0 表示是第一个
timeout=5 # 默认等待时间
splashimage=(hd0,0)/grub/splash.xpm.gz # 指定菜单的背景图片的路径。为xpm格式,采用gzip压缩,只能为14bits色
hiddenmenu # 隐藏菜单
title CentOS (2.6.32-358.el6.x86_64) # 标题名,用户可自定义
root (hd0,0) # 指定 grub 的根位置
# 指定 kernel 文件的位置,还要指出 root(系统启动后) 的位置,挂载方式 ro,这项很关键。
# 加载后会启动 init 进程。
kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=/dev/mapper/vg0-root rd_NO_LUKS rd_NO_DM LANG=en_US.UTF-8 rd_LVM_LV=vg0/swap rd_NO_MD SYSFONT=latarcyrheb-sun16 crashkernel=auto rd_LVM_LV=vg0/root KEYBOARDTYPE=pc KEYTABLE=us rhgb crashkernel=auto quiet rhgb quiet
# 在内核启动过程中装载根文件系统时有用
initrd /initramfs-2.6.32-358.el6.x86_64.img

常见错误解决范例:
例1
执行yum就开始报错:

代码如下:

Error: Cannot retrieve metalink for repository: epel. Please ...

解决办法都是编辑/etc/yum.repos.d/epel.repo,把基础的恢复,镜像的地址注释掉
#baseurl  改成   baseurl
mirrorlist  改成  #mirrorlist

例2

代码如下:

"DNS/Networking Errors inside the docker"
[root@localhost ~]# docker -dns="8.8.8.8" run centos:6.4 yum install hiphop-php
2013/08/21 07:53:05 POST /v1.4/containers/create
2013/08/21 07:53:05 POST /v1.4/containers/6d9fef14bd1a/start
2013/08/21 07:53:05 POST /v1.4/containers/6d9fef14bd1a/attach?logs=1&stderr=1&stdout=1&stream=1
Loaded plugins: fastestmirror
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was
14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

可以执行下面的命令来重置docker的运行环境,从而解决上述问题。

代码如下:

pkill docker
iptables -t nat -F
ifconfig docker0 down
brctl delbr docker0
docker -d

(0)

相关推荐

  • 在CentOS系统中安装Websvn的教程

    大家好,今天我们会在CentOS 7.0 上为 subversion(SVN)安装Web 界面 WebSVN.(subverion 是 apache 的顶级项目,也称为 Apache SVN 或 SV ...

  • 怎么在CentOS系统上安装Docker

    Docker 是一个开源工具,它可以让创建和管理 Linux 容器变得简单.容器就像是轻量级的虚拟机,并且可以以毫秒级的速度来启动或停止.Docker 帮助系统管理员和程序员在容器中开发应用程序,并且 ...

  • 在CentOS系统中安装RPMforge的方法

    RPMforge 是 Dag.Dries 和其它软件包的组合.它们为 CentOS 提供了超过 4000 个软件包,包括 mplayer.xmms-MP3和其它流行的媒体播放工具.RPMforge 不 ...

  • CentOS系统中安装使用图形化界面的教程

    CentOS 作为服务器的操作系统是很常见的,但是因为需要稳定而没有很时髦的更新,所以很少做为桌面环境.在服务器上通常不需要安装桌面环境,最小化地安装 CentOS(也就是 minimal CentO ...

  • CentOS系统中安装配置Apache+PHP+MySQL环境

    首先下载软件; [root@localhost ]# wget http://apache.mirror.phpchina.com/httpd/httpd-2.2.9.tar.gz --00:47:3 ...

  • CentOS系统中安装高亮vim编辑工具的方法

    们在安装完Centos后,它默认的是安装了VI编辑器,VIM是没有安装的,所以我们在使用vim test.txt时会提示: vim command not found 。。。 这就是说明我们的Linu ...

  • 在Windows系统上安装Docker的教程

    大家好,今天我们来了解一下 Windows 操作系统中的 Docker 以及在其中安装 Docker Windows 客户端的知识.Docker 引擎使用 Linux 特有的内核特性,因此不能通过 W ...

  • CentOS系统中安装和破解jira的教程

    JIRA介绍 跟踪并管理在项目开发和维护过程中出现的问题(如:缺陷.新特性.任务. 改进等)是项目管理很重要的任务,但是很少有团队能做的很好. JIRA作为一个专业的问题跟踪系统可以帮助您把缺陷管理起 ...

  • 在CentOS系统中安装SVN版本控制软件的教程

    在终端运行svn命令.如果没有安装,系统会提示安装1.首先需要安装Subversion软件: 复制代码 代码如下: sudo apt-get install subversion 2.建立一个文件夹作 ...