您的位置:首页 > 运维架构 > Docker

在RedHat/CentOS下安装Docker(不升级内核

2015-06-04 10:34 776 查看


在RedHat/CentOS下安装Docker(不升级内核)

时间 2014-01-20 20:08:05 Linux公社
原文 http://www.linuxidc.com/Linux/2014-01/95513.htm
主题 Centos

背景

由于内核版本问题,最初仅Ubuntu可以较好的支持Docker。不过,由于RedHat系列OS(REHL、CentOS)是目前主流的Linux服务器操作系统,所以令RedHat系列OS支持Docker很有必要。目前Docker和RedHat已经展开深入合作,并在2013年年底推出了可以在RedHat系列OS上运行的Docker0.7。

目前有一些博客介绍了如何在CentOS上安装Docker,例如 http://www.linuxidc.com/Linux/2014-01/95512.htm 。但是这些博客都是针对老版本的Docker,安装方法是在升级操作系统内核版本的基础上完成。问题是,我们不可以随意升级生产环境的操作系统内核版本,而且Docker0.7的主旨就是:Docker使用者可以在不升级内核的前提下,在RedHat环境这使用Docker。因此,这里撰写一篇博客,介绍如何在RedHat/CentOS环境下,安装新版本的Docker。

一、禁用selinux

由于Selinux和LXC有冲突,所以需要禁用selinux。编辑/etc/selinux/config,设置两个关键变量。

SELINUX=disabled

SELINUXTYPE=targeted

二、配置FedoraEPEL源

1 sudo yum install http://ftp.riken.jp/Linux/fedora/epel/6/x86_64/epel-release-6-8.noarch.rpm
三、添加hop5.repo源

cd /etc/yum.repos.d

sudo wget http://www.hop5.in/yum/el6/hop5.repo
四、安装Docker

sudo yum install docker-io

图1是yum安装过程中的截图,可以发现安装的软件只有docker和lxc相关包,没有内核包,例如kernel-ml-aufs。



图1 yum install docker-io输出截图

五、初步验证docker

输入docker -h,如果有如下输出,就证明docker在形式上已经安装成功。

# docker -h

Usage of docker:

-D=false: Enable debug mode

-H=[]: Multiple tcp://host:port or unix://path/to/socket to bind in daemon mode, single connection otherwise

-api-enable-cors=false: Enable CORS headers in the remote API

-b="": Attach containers to a pre-existing network bridge; use 'none' to disable container networking

-bip="": Use this CIDR notation address for the network bridge's IP, not compatible with -b

-d=false: Enable daemon mode

-dns=[]: Force docker to use specific DNS servers

-g="/var/lib/docker": Path to use as the root of the docker runtime

-icc=true: Enable inter-container communication

-ip="0.0.0.0": Default IP address to use when binding container ports

-iptables=true: Disable docker's addition of iptables rules

-p="/var/run/docker.pid": Path to use for daemon PID file

-r=true: Restart previously running containers

-s="": Force the docker runtime to use a specific storage driver

-v=false: Print version information and quit

#docker -d & 启动守护进程

注意有可能报如下错:

Error creating bridge: ip failed: ip link add docker0 type bridge (output: )

解决方法 (手工创建docker0网桥):

$ sudo ip link set dev docker0 down
$ sudo brctl delbr docker0
$ sudo iptables -t nat -F POSTROUTING

$ brctl addbr docker0
$ ip addr add 192.168.5.1/24 dev docker0
$ ip link set dev docker0 up
$ ip addr show docker0
$ echo 'DOCKER_OPTS="-b=docker0"' >> /etc/default/docker
$ docker -d &


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

Docker的搭建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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: