删除 docker-io 后在 CentOS 6 上安装 Docker

Installing Docker on CentOS 6 after removal of docker-io

一段时间以来,docker-io 软件包已用于在 CentOS 6 上安装 Docker。

自本月初以来,此包似乎不再可用:

[root@e0-01.p:0 yum.repos.d]# yum install docker-io
Loaded plugins: fastestmirror, presto
Setting up Install Process
Determining fastest mirrors
 * base: mirror.intergrid.com.au
 * extras: mirror.ventraip.net.au
 * updates: mirror.ventraip.net.au
base                                                                 | 3.7 kB     00:00
base/primary_db                                                      | 4.7 MB     00:00
epel                                                                 | 4.7 kB     00:00
epel/primary_db                                                      | 6.0 MB     00:00
extras                                                               | 3.4 kB     00:00
extras/primary_db                                                    |  28 kB     00:00
updates                                                              | 3.4 kB     00:00
updates/primary_db                                                   | 3.2 MB     00:00
No package docker-io available.
Error: Nothing to do

docker-io 以前是 epel 存储库的一部分,并且一直是在 number of places.[= 中的 CentOS 6 上安装 Docker(虽然是旧版本)的推荐方法。 16=]

有没有其他方法Docker可以安装在CentOS 6上?

我不确定为什么 docker-io 突然消失了,但是以前通过 epel 存储库提供的相同版本可以直接从 Docker:

托管的这个 rpm 安装
[root@server]# yum install
https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm

[root@server]# docker --version
Docker version 1.7.0, build 0baf609

你应该从 epel-release 安装 docker-engine:

  1. 添加 docker 存储库以安装 Centos 6 Docker 的最新副本

更新,安装 epel repo 然后创建一个名为 docker.repo 的 repo 并填写 docker repo 的信息:

[user@docker7 ~]# sudo yum update -y
[user@docker7 ~]# sudo yum install epel-release
[user@docker7 ~]# sudo vi /etc/yum.repos.d/docker.repo

[docker-repo]
name=Docker Repo
baseurl=https://yum.dockerproject.org/repo/main/centos/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
  1. 安装docker包,然后启用服务在重启时启动,同时启动docker服务。

现在安装 docker-engine 并启用 docker 以使用 systemctl 启动。然后启用 docker 命令并使用 systemctl start docker

启动 docker
              For centos 7 
[user@docker7 ~]$ sudo yum install -y docker-engine
[user@docker7 ~]$ sudo systemctl enable docker
[user@docker7 ~]$ sudo systemctl start docker
[user@docker7 ~]$ sudo systemctl status docker

              For centos 6 
[user@docker7 ~]$ sudo chkconfig docker on 
[user@docker7 ~]$ sudo service docker start 
[user@docker7 ~]$ sudo service docker status

[user@docker7 ~]$ ps aux | grep docker
root      2382  0.3  1.4 498424 26536 ?        Ssl  20:17   0:00 /usr/bin/dockerd
root      2385  0.0  0.2 263104  5568 ?        Ssl  20:17   0:00 docker-containerd -l unix:///var/run/docker/libcontainerd/docker-containerd.sock --metrics-interval=0 --start-timeout 2m --state-dir /var/run/docker/libcontainerd/containerd --shim docker-containerd-shim --runtime docker-runc

3.Manage Docker as a non-root user

这个版本终于安装好了

wget https://yum.dockerproject.org/repo/main/centos/6/Packages/docker-engine-1.7.1-1.el6.x86_64.rpm
sudo rpm -ivhf docker-engine-1.7.1-1.el6.x86_64.rpm
sudo service docker start

系统

Linux host.my-domain.com 2.6.32-431.17.1.el6.x86_64 #1 SMP Wed May 7 23:32:49 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

版本 1.7.0 has a bug,阻止 docker 守护程序在 CentOS 6.x:

上启动
level=warning msg="Running modprobe bridge nf_nat failed with message: , error: exit status 1"
level=fatal msg="Error starting daemon: Error initializing network controller: Error creating default \"bridge\" network: operation not supported"

为了修复使用版本 1.7.1:

yum install https://yum.dockerproject.org/repo/main/centos/6/Packages/docker-engine-1.7.1-1.el6.x86_64.rpm

CentOS 6 的最新docker 引擎版本是1.7.1,可用的URL 是https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm。不幸的是,这个 rpm 文件现在不能通过“yum install”命令安装。下载文件后,您可以使用“rpm”命令。

docker-engine 需要 Libcgroup,您可以从 https://vault.centos.org.

找到它
wget https://vault.centos.org/6.6/os/x86_64/Packages/libcgroup-0.40.rc1-12.el6.x86_64.rpm
sudo rpm -ivhf libcgroup-0.40.rc1-12.el6.x86_64.rpm
wget https://get.docker.com/rpm/1.7.1/centos-6/RPMS/x86_64/docker-engine-1.7.1-1.el6.x86_64.rpm
sudo rpm -ivhf docker-engine-1.7.1-1.el6.x86_64.rpm
sudo service docker start

可以用这个urlhttps://mirrors.tuna.tsinghua.edu.cn/docker/yum/repo/centos6/Packages/ 并选择 docker-engine rpm x86-64 版本下载

然后,你可以这样做:

sudo yum install localinstall docker-engine-1.7.1-1.el6.x86_64.rpm