docker或docker-engine 。 如果这些已安装,请卸载它们以及关联的依赖关系。$ sudo yum remove docker docker-common container-selinux docker-selinux \ docker-engine如果yum报告没有安装这些软件包,那么可以。
/var/lib/docker/的内容,包括镜像,容器,卷和网络都被保留。 Docker CE包现在称为docker-ce ,Docker EE包现在称为docker-ee。
 
您可以根据需要以不同的方式安装Docker:
大多数用户设置了Docker的存储库并从中安装,以方便安装和升级任务。 这是推荐的方法。
某些用户下载RPM软件包并手动安装,并手动完成管理升级。 这在诸如在没有访问互联网的空中密码系统上安装Docker的情况下是有用的。
在新主机上首次安装Docker之前,需要设置Docker存储库。 之后,您可以从存储库安装和更新Docker。
Docker CE和Docker EE的存储库设置说明不同。
安装所需的软件包 yum-utils提供了yum-config-manager实用程序, device-mapper-persistent-data和lvm2是devicemapper存储驱动程序所必需的。
$ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 
$ sudo yum-config-manager  --add-repo  https://download.docker.com/linux/centos/docker-ce.repo 
3. 可选 :启用边缘存储库。 此存储库包含在上面的docker.repo文件中,但默认情况下禁用。 您可以在稳定的存储库旁边启用它。
 $ sudo yum-config-manager --enable docker-ce-edge 
您可以通过运行带有--disable标志的yum-config-manager命令来禁用边缘存储--disable 。 要重新启用它,请使用--enable标志。 以下命令禁用边缘存储库。
$ sudo yum-config-manager --disable docker-ce-edge
从/etc/yum.repos.d/中删除任何现有的Docker存储/etc/yum.repos.d/ 。
将您的Docker EE存储库URL存储在/etc/yum/vars/中的yum变量中。 将<DOCKER-EE-URL>替换<DOCKER-EE-URL>记下的URL。
 $ sudo sh -c ‘echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl‘ 
安装所需的软件包 yum-utils提供了yum-config-manager实用程序, device-mapper-persistent-data和lvm2是devicemapper存储驱动程序所必需的。
 $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 
使用以下命令添加稳定版本库:
 $ sudo yum-config-manager \ --add-repo \ <DOCKER-EE-URL>/docker-ee.repo
更新yum包索引。
 $ sudo yum makecache fast 如果这是您第一次从添加Docker存储库后刷新包索引,系统将提示您接受GPG密钥,并显示密钥的指纹。 验证指纹是否正确,如果是,请接受该键。
| Docker版 | 指纹 | 
|---|---|
| Docker CE | 060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35 | 
| Docker EE | DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96 | 
安装最新版本的Docker,或转到下一步安装特定版本。
| Docker版 | 命令 | 
|---|---|
| Docker CE | sudo yum install docker-ce | 
| Docker EE | sudo yum install docker-ee | 
警告 :如果启用了多个Docker存储库,则无需在
yum install或yum update命令中指定版本即可yum install或yum update将始终安装可能最高的版本,这可能不适合您的稳定性需求。
在生产系统上,您应该安装特定版本的Docker,而不是始终使用最新版本。 列出可用的版本。 此示例使用sort -r命令对结果进行排序,版本号由最高到最低,并被截断。
注意 :这个
yum list命令只显示二进制包。 要显示源程序包,请从程序包名称中省略.x86_64。
 $ yum list docker-ce.x86_64 --showduplicates |sort -r docker-ce.x86_64 17.03.0.el7 docker-ce-stable 列表的内容取决于启用了哪些存储库,并且将特定于您的CentOS版本(在本示例中由版本的.el7后缀表示)。 选择要安装的特定版本。 第二列是版本字符串。 第三列是存储库名称,它指示软件包所在的存储库以及其稳定性级别。 要安装特定版本,请将版本字符串附加到包名称,并用连字符( - )分隔:
| Docker版 | 命令 | 
|---|---|
| Docker CE | sudo yum install docker-ce-<VERSION> | 
| Docker EE | sudo yum install docker-ee-<VERSION> | 
编辑/etc/docker/daemon.json 。 如果还不存在,创建它。 假设文件为空,请添加以下内容。
 { 
   "storage-driver" :   "devicemapper" 
 }  
对于生产系统,您必须使用direct-lvm模式,这需要您准备块设备。 在启动Docker之前,请遵循devicemapper存储驱动程序指南中的步骤 。
启动Docker。
 $ sudo systemctl start docker 通过运行hello-world映像来验证docker是否正确安装。
 $ sudo docker run hello-world 此命令下载测试映像并在容器中运行它。 当容器运行时,它打印一个信息消息并退出。
Docker已安装并运行。 您需要使用sudo来运行Docker命令。 继续执行Linux安装后 ,允许非特权用户运行Docker命令和其他可选配置步骤。
要升级Docker,首先sudo yum makecache fast运行sudo yum makecache fast ,然后按照安装说明 ,选择要安装的新版本。
如果您不能使用Docker的存储库来安装Docker,则可以下载.rpm文件并将其手动安装。 每次要升级Docker时,都需要下载一个新文件。
Docker CE和Docker EE的这一步骤是不同的。
Docker CE :转到https://download.docker.com/linux/centos/7/x86_64/stable/Packages/并下载要安装的Docker版本的.rpm文件。
注意 :要安装边缘包,请将> URL中的字
stable更改为edge。 了解稳定和边缘渠道 。
Docker EE :在浏览器中转到与您的试用或订阅相关联的Docker EE存储库URL。 转到7/x86_64/stable-17.03/Packages/并下载要安装的Docker版本的.rpm文件。
安装Docker,将下面的路径更改为您下载Docker程序包的路径。
 $ sudo yum install /path/to/package.rpm 编辑/etc/docker/daemon.json 。 如果还不存在,创建它。 假设文件为空,请添加以下内容。
 { 
   "storage-driver" :   "devicemapper" 
 }  
对于生产系统,您必须使用direct-lvm模式,这需要您准备块设备。 在启动Docker之前,请遵循devicemapper存储驱动程序指南中的步骤 。
启动Docker。
 $ sudo systemctl start docker 通过运行hello-world映像来验证docker是否正确安装。
 $ sudo docker run hello-world 此命令下载测试映像并在容器中运行它。 当容器运行时,它打印一个信息消息并退出。
Docker已安装并运行。您需要使用sudo来运行Docker命令。继续执行Linux的安装后步骤,允许非特权用户运行Docker命令和其他可选配置步骤。
要升级Docker,请下载较新的软件包文件并重复安装过程 ,使用yum -y upgrade而不是yum -y install ,并指向新文件。
卸载Docker软件包:
| Docker版 | 命令 | 
|---|---|
| Docker CE | sudo yum remove docker-ce | 
| Docker EE | sudo yum remove docker-ee | 
主机上的图像,容器,卷或自定义配置文件不会自动删除。 删除所有图像,容器和卷:
 $ sudo rm -rf /var/lib/docker 如果需要,删除devicemapper精简池并重新格式化作为其一部分的块设备。
您必须手动删除任何已编辑的配置文件。
原文:http://www.cnblogs.com/wglIT/p/6915446.html