详解Centos6.5下docker 环境搭建
<p><strong>一.运行docker Linux内核版本需要在3.8以上,针对centos6.5 内核为2.6的系统需要先升级内核.不然会特别卡,退出容器.</strong></p>
<p>
在yum的ELRepo源中,有mainline(3.13.1)、long-term(3.10.28)这2个内核版本,考虑到long-term更稳定,会长期更新,所以选择这个版本。</p>
<p>
1.查看当前版本:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_749479">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># more /etc/issue</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">CentOS release 6.5 (Final)</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">Kernel \r on an \m</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain"></code><code class="bash comments"># uname -a</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">Linux localhost.localdomain 2.6.32-431.el6.x86_64 </code><code class="bash comments">#1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
2.升级内核至3.10.28</p>
<p>
1.>导入public key</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_316135">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">rpm --</code><code class="bash functions">import</code> <code class="bash plain">https:</code><code class="bash plain">//www</code><code class="bash plain">.elrepo.org</code><code class="bash plain">/RPM-GPG-KEY-elrepo</code><code class="bash plain">.org</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
2.>安装ELRepo到CentOS-6.5中</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_968983">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">rpm -ivh http:</code><code class="bash plain">//www</code><code class="bash plain">.elrepo.org</code><code class="bash plain">/elrepo-release-6-5</code><code class="bash plain">.el6.elrepo.noarch.rpm</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
3.>安装**kernel-lt(lt=long-term)**</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_633953">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum --enablerepo=elrepo-kernel </code><code class="bash functions">install</code> <code class="bash plain">kernel-lt -y</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
或者安装kernel-ml(ml=mainline)</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_623190">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum --enablerepo=elrepo-kernel </code><code class="bash functions">install</code> <code class="bash plain">kernel-ml -y</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
4.>编辑grub.conf文件,修改Grub引导顺序</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_191292">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
<div class="line number12 index11 alt1">
12</div>
<div class="line number13 index12 alt2">
13</div>
<div class="line number14 index13 alt1">
14</div>
<div class="line number15 index14 alt2">
15</div>
<div class="line number16 index15 alt1">
16</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">vim </code><code class="bash plain">/etc/grub</code><code class="bash plain">.conf</code>
</div>
<div class="line number2 index1 alt1">
</div>
<div class="line number3 index2 alt2">
<code class="bash comments"># grub.conf generated by anaconda</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash comments">#</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">default=0</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">timeout=5</code>
</div>
<div class="line number7 index6 alt2">
<code class="bash plain">splashimage=(hd0,0)</code><code class="bash plain">/boot/grub/splash</code><code class="bash plain">.xpm.gz</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash plain">hiddenmenu</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain">title CentOS (3.10.28-1.el6.elrepo.x86_64)</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash spaces"> </code><code class="bash plain">root (hd0,0)</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash spaces"> </code><code class="bash plain">kernel </code><code class="bash plain">/boot/vmlinuz-3</code><code class="bash plain">.10.28-1.el6.elrepo.x86_64 ro root=UUID=0a05411f-16f2-4d69-beb0-2db4cefd3613 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet</code>
</div>
<div class="line number12 index11 alt1">
<code class="bash spaces"> </code><code class="bash plain">initrd </code><code class="bash plain">/boot/initramfs-3</code><code class="bash plain">.10.28-1.el6.elrepo.x86_64.img</code>
</div>
<div class="line number13 index12 alt2">
<code class="bash plain">title CentOS (2.6.32-431.3.1.el6.x86_64)</code>
</div>
<div class="line number14 index13 alt1">
<code class="bash spaces"> </code><code class="bash plain">root (hd0,0)</code>
</div>
<div class="line number15 index14 alt2">
<code class="bash spaces"> </code><code class="bash plain">kernel </code><code class="bash plain">/boot/vmlinuz-2</code><code class="bash plain">.6.32-431.3.1.el6.x86_64 ro root=UUID=0a05411f-16f2-4d69-beb0-2db4cefd3613 rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=us rd_NO_MD crashkernel=auto.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet</code>
</div>
<div class="line number16 index15 alt1">
<code class="bash spaces"> </code><code class="bash plain">initrd </code><code class="bash plain">/boot/initramfs-2</code><code class="bash plain">.6.32-431.3.1.el6.x86_64.img</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
确认刚安装好的内核在哪个位置,然后设置default值(从0开始),一般新安装的内核在第一个位置,所以设置default=0</p>
<p>
5.>重启,查看内核版本号.</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_596341">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># reboot</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain"></code><code class="bash comments"># uname -r</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">3.10.104-1.el6.elrepo.x86_64</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
至此,CentOS6.5的内核升级完成,下面就可以安装docker了.</p>
<p>
<strong>二.安装docker</strong></p>
<p>
直接使用命令: yum install docker-io 是会报错的!!! 提示:No package docker-io available.</p>
<p>
需要先安装yum 源.</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_743718">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum -y </code><code class="bash functions">install</code> <code class="bash plain">http:</code><code class="bash plain">//dl</code><code class="bash plain">.fedoraproject.org</code><code class="bash plain">/pub/epel/6/x86_64/epel-release-6-8</code><code class="bash plain">.noarch.rpm</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
再执行</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_324437">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum </code><code class="bash functions">install</code> <code class="bash plain">docker-io</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
就可以正常安装了!!</p>
<p>
在安装的过程中由于dns的问题报了错,所以要设置好自己的dns确保服务器能连接到外网,我当时设置的dns为:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_730529">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">vim </code><code class="bash plain">/etc/resolv</code><code class="bash plain">.conf </code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">nameserver 8.8.8.8</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">nameserver 8.8.4.4</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
启动docker</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_541969">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">service docker start</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
查看docker版本:</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_541407">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
<div class="line number3 index2 alt2">
3</div>
<div class="line number4 index3 alt1">
4</div>
<div class="line number5 index4 alt2">
5</div>
<div class="line number6 index5 alt1">
6</div>
<div class="line number7 index6 alt2">
7</div>
<div class="line number8 index7 alt1">
8</div>
<div class="line number9 index8 alt2">
9</div>
<div class="line number10 index9 alt1">
10</div>
<div class="line number11 index10 alt2">
11</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># docker version</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">Client version: 1.7.1</code>
</div>
<div class="line number3 index2 alt2">
<code class="bash plain">Client API version: 1.19</code>
</div>
<div class="line number4 index3 alt1">
<code class="bash plain">Go version (client): go1.4.2</code>
</div>
<div class="line number5 index4 alt2">
<code class="bash plain">Git commit (client): 786b29d</code><code class="bash plain">/1</code><code class="bash plain">.7.1</code>
</div>
<div class="line number6 index5 alt1">
<code class="bash plain">OS</code><code class="bash plain">/Arch</code> <code class="bash plain">(client): linux</code><code class="bash plain">/amd64</code>
</div>
<div class="line number7 index6 alt2">
<code class="bash plain">Server version: 1.7.1</code>
</div>
<div class="line number8 index7 alt1">
<code class="bash plain">Server API version: 1.19</code>
</div>
<div class="line number9 index8 alt2">
<code class="bash plain">Go version (server): go1.4.2</code>
</div>
<div class="line number10 index9 alt1">
<code class="bash plain">Git commit (server): 786b29d</code><code class="bash plain">/1</code><code class="bash plain">.7.1</code>
</div>
<div class="line number11 index10 alt2">
<code class="bash plain">OS</code><code class="bash plain">/Arch</code> <code class="bash plain">(server): linux</code><code class="bash plain">/amd64</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
查看docker日志.</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_988245">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">cat</code> <code class="bash plain">/var/log/docker</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
至此,docker安装完成!!!</p>
<p>
<strong>三、卸载docker</strong></p>
<p>
列出你安装过的包</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_492308">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
<div class="line number2 index1 alt1">
2</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain"></code><code class="bash comments"># yum list installed | grep docker</code>
</div>
<div class="line number2 index1 alt1">
<code class="bash plain">docker-io.x86_64 1.7.1-2.el6 @epel</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
删除软件包</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_82406">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash plain">yum -y remove docker-io.x86_64</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
删除镜像/容器等</p>
<div class="jb51code">
<div>
<div class="syntaxhighlighterbash" id="highlighter_901148">
<div class="toolbar">
<span>?</span>
</div>
<table border="0" cellpadding="0" cellspacing="0"><tbody><tr>
<td class="gutter">
<div class="line number1 index0 alt2">
1</div>
</td>
<td class="code">
<div class="container">
<div class="line number1 index0 alt2">
<code class="bash functions">rm</code> <code class="bash plain">-rf </code><code class="bash plain">/var/lib/docker</code>
</div>
</div>
</td>
</tr></tbody></table>
</div>
</div>
<div class="codetool" id="codetool">
<div class="code_n">
<textarea></textarea>
</div>
</div>
</div>
<p>
<strong>四、升级docker版本为1.10.3</strong></p>
<p>
升级之前停止docker服务,并将原有的docker服务进行备份. mv /usr/bin/docker /usr/bin/docker.bak</p>
<p>
</p>
<div class="codetitle">
<span><u>复制代码</u></span> 代码如下:</div>
<div class="codebody" id="code75680">
<br>
nohup wget -c https://get.docker.com/builds/Linux/x86_64/docker-1.10.3 -O /usr/bin/docker</div>
<p>
</p>
<p>
给执行权限:chmod 755 /usr/bin/docker 然后重启服务,并查看版本.</p>
<p>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。</p>
<p>
原文链接:http://www.cnblogs.com/saneri/p/6178536.html</p>
頁:
[1]