操作系统要求

要安装Docker,您需要64位版本的CentOS 7。步骤:
 

卸载旧版本

Docker的旧版本被称为dockerdocker-engine 。 如果这些已安装,请卸载它们以及关联的依赖关系。
  1. $ 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:

  • 大多数用户设置了Docker的存储库从中安装,以方便安装和升级任务。 这是推荐的方法。

  • 某些用户下载RPM软件包并手动安装,并手动完成管理升级。 这在诸如在没有访问互联网的空中密码系统上安装Docker的情况下是有用的。

使用存储库安装

在新主机上首次安装Docker之前,需要设置Docker存储库。 之后,您可以从存储库安装和更新Docker。

设置存储库

Docker CEDocker EE的存储库设置说明不同。

Docker CE
  1. 安装所需的软件包 yum-utils提供了yum-config-manager实用程序, device-mapper-persistent-datalvm2devicemapper存储驱动程序所必需的。

    1. $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2
     
  2. 使用以下命令设置稳定版本库。 您始终需要稳定的存储库,即使您也想安装边缘版本。
  1. $ 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
 
 
Docker EE
  1. /etc/yum.repos.d/中删除任何现有的Docker存储/etc/yum.repos.d/ 。

  2. 将您的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' 
  3. 安装所需的软件包 yum-utils提供了yum-config-manager实用程序, device-mapper-persistent-datalvm2devicemapper存储驱动程序所必需的。

     $ sudo yum install -y yum-utils device-mapper-persistent-data lvm2 
  4. 使用以下命令添加稳定版本库:

     $ sudo yum-config-manager \ --add-repo \ <DOCKER-EE-URL>/docker-ee.repo
     

安装Docker

  1. 更新yum包索引。

    1. $ 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
  2. 安装最新版本的Docker,或转到下一步安装特定版本。

    Docker版 命令
    Docker CE sudo yum install docker-ce
    Docker EE sudo yum install docker-ee

    警告 :如果启用了多个Docker存储库,则无需在yum installyum update命令中指定版本即可yum installyum update将始终安装可能最高的版本,这可能不适合您的稳定性需求。

  3. 在生产系统上,您应该安装特定版本的Docker,而不是始终使用最新版本。 列出可用的版本。 此示例使用sort -r命令对结果进行排序,版本号由最高到最低,并被截断。

    注意 :这个yum list命令只显示二进制包。 要显示源程序包,请从程序包名称中省略.x86_64 。

    1. $ 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>
  4. 编辑/etc/docker/daemon.json 。 如果还不存在,创建它。 假设文件为空,请添加以下内容。

     {
    "storage-driver" : "devicemapper"
    }
  5. 对于生产系统,您必须使用direct-lvm模式,这需要您准备块设备。 在启动Docker之前,请遵循devicemapper存储驱动程序指南中的步骤 。

  6. 启动Docker。

    1. $ sudo systemctl start docker
  7. 通过运行hello-world映像来验证docker是否正确安装。

    1. $ sudo docker run hello-world

    此命令下载测试映像并在容器中运行它。 当容器运行时,它打印一个信息消息并退出。

Docker已安装并运行。 您需要使用sudo来运行Docker命令。 继续执行Linux安装后 ,允许非特权用户运行Docker命令和其他可选配置步骤。

升级Docker

要升级Docker,首先sudo yum makecache fast运行sudo yum makecache fast ,然后按照安装说明 ,选择要安装的新版本。

从包装中安装

如果您不能使用Docker的存储库来安装Docker,则可以下载.rpm文件并将其手动安装。 每次要升级Docker时,都需要下载一个新文件。

  1. Docker CE和Docker EE的这一步骤是不同的。

  2. 安装Docker,将下面的路径更改为您下载Docker程序包的路径。

    1. $ sudo yum install /path/to/package.rpm
  3. 编辑/etc/docker/daemon.json 。 如果还不存在,创建它。 假设文件为空,请添加以下内容。

     {
    "storage-driver" : "devicemapper"
    }
  4. 对于生产系统,您必须使用direct-lvm模式,这需要您准备块设备。 在启动Docker之前,请遵循devicemapper存储驱动程序指南中的步骤 。

  5. 启动Docker。

    1. $ sudo systemctl start docker
  6. 通过运行hello-world映像来验证docker是否正确安装。

    1. $ sudo docker run hello-world

    此命令下载测试映像并在容器中运行它。 当容器运行时,它打印一个信息消息并退出。

Docker已安装并运行。您需要使用sudo来运行Docker命令。继续执行Linux的安装后步骤,允许非特权用户运行Docker命令和其他可选配置步骤。

升级Docker

要升级Docker,请下载较新的软件包文件并重复安装过程 ,使用yum -y upgrade而不是yum -y install ,并指向新文件。

卸载Docker

  1. 卸载Docker软件包:

    Docker版 命令
    Docker CE sudo yum remove docker-ce
    Docker EE sudo yum remove docker-ee
  2. 主机上的图像,容器,卷或自定义配置文件不会自动删除。 删除所有图像,容器和卷:

    1. $ sudo rm -rf /var/lib/docker
  3. 如果需要,删除devicemapper精简池并重新格式化作为其一部分的块设备。

您必须手动删除任何已编辑的配置文件。

docker安装---CentOS_7的更多相关文章

  1. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  2. docker安装

    系统要求:需要一个64位的centos7操作系统和版本3.10或更高版本的Linux内核 开始安装: uname -r   //查看内核版本yum -y update //更新系统更新到最新 #安装d ...

  3. 2. Docker - 安装

    一.Docker介绍 1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙 ...

  4. Docker 安装部署

    Docker学习笔记 一.Ubuntu Docker 安装 (1).获取最新版本Docker安装包 lyn@lyn:/data/docker$ sudo wget -qO- https://get.d ...

  5. docker 安装

    Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...

  6. Docker安装及基本使用方法

    Docker安装 CentOS6上安装Docker # yum -y install epel-release # yum -y install docker-io CentOS7上安装Docker ...

  7. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  8. docker安装caffe

    [最近一直想要学习caffe,但是苦苦纠结于环境安装不上,真的是第一步都迈不出去,还好有docker的存在!下面,对本人如何利用docker安装caffe做以简单叙述,不属于教程,只是记录自己都做了什 ...

  9. Docker安装Gitlab

    一.Ubuntu16.4上Docker安装Gitlab 1.安装docker 参见:https://docs.docker.com/engine/installation/linux/ubuntuli ...

随机推荐

  1. 分界线<hr/>

    <hr align="center" noshade="noshade" width="90px" color="#1DAB ...

  2. 017-Hadoop Hive sql语法详解7-去重排序、数据倾斜

    一.数据去重排序 1.1.去重 distinct与group by 尽量避免使用distinct进行排重,特别是大表操作,用group by代替 -- 不建议 select DISTINCT key ...

  3. redis3.2.11多机多实例集群部署及测试连接情况

    机器配置 redis3.2.11安装配置规划 机器 192.168.169.136(本机虚拟机1) 192.168.169.137(本机虚拟机2) 系统 Red Hat Enterprise Linu ...

  4. 使用 C#的 is 和 as 操作符来转型

    在 C#语言中进行类型转换的另一种方式是使用 is 操作符. is 检查一个对象是否兼容于指定的类型,并返回一个 Boolean 值: true 或 false.注意 is 操作符永远不会抛出异常,以 ...

  5. 分布式计算开源框架Hadoop入门实践(三)

    Hadoop基本流程 一个图片太大了,只好分割成为两部分.根据流程图来说一下具体一个任务执行的情况. 在分布式环境中客户端创建任务并提交. InputFormat做Map前的预处理,主要负责以下工作: ...

  6. python之路 模块,序列化,迭代器,生成器

    一.模块 1.模块简介 模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py.模块可以被别的程序引入,以使用该模块中的函数等功能.这也是使用python标准库的方法. 类似于函数式编程和面向过 ...

  7. Python基础知识补充(重要)-作用域、特殊语法

    Python作用域 python代码内部块如if语句内声明变量,在if代码段后在调用此变量并未报如“undefinded name"此类错误,例子如下: if 1 == 1: name = ...

  8. public,protected,privat区别

    关于从基类继承来的方法和属性的保护: --class Pig:public Animal {...} C++不仅允许你对在类里定义的方法和属性实施访问控制,还允许你控制子类可以访问基类里的哪些方法和属 ...

  9. python之使用__future__(解决版本不同,不兼容问题)

    Python的新版本会引入新的功能,但是,实际上这些功能在上一个老版本中就已经存在了.要“试用”某一新的特性,就可以通过导入__future__模块的某些功能来实现. 例如,Python 2.7的整数 ...

  10. python之json模块的基本使用

    json模块的作用:将字符串和字典相互转换 json和eval的区别: eval函数不能识别null转换成None json可以将null转换成python可以识别的None json序列化和反序列化 ...