码迷,mamicode.com
首页 > 其他好文 > 详细

CentOS 安装 Docker

时间:2018-02-16 14:32:25      阅读:229      评论:0      收藏:0      [点我收藏+]

标签:字符串   建议   需要   使用   需求   企业   自己   blog   namespace   

Linux安装docker的前提条件:

  • 必须是64位CPU架构的计算机,Docker目前不支持32位CPU;
  • 运行Linux3.8或更高版本内核,CentOS时内核必不小于3.10;
  • 内核必须支持一种合适的存储驱动,可以是Device Manager、AUFS、vfs、btrfs、以及默认的驱动Device Mapper中的一个;
  • 内核必须支持并开启cgroup和命名空间namespace功能。

检查前提条件

  1. 内核

    通过uname命令来检查内核版本信息。

  2. 检查内存驱动是否存在,即检查Device Mapper

技术分享图片

版本说明

Docker从1.13.x版本开始,版本分为企业版EE和社区版CE,版本号也改为按照时间线来发布,比如17.03就是2017年3月,有点类似于ubuntu的版本发布方式。

  • Docker Engine改为Docker CE(社区版)
    它包含了CLI客户端、后台进程/服务以及API。用户像以前以同样的方式获取。

    CE版分为Stable和Edge两种发布方式。

    • Stable版本是季度发布方式,比如17.03, 17.06, 17.09
    • Edge版本是月份发布方式, 比如17.03, 17.04......
    • Edge版本每月发布,提供一个月支持。
    • Stable版本每季度发布,提供4个月支持。
  • Docker Data Center改为Docker EE(企业版)
    企业版提供一些额外的收费服务。企业版说明在这里

技术分享图片

正常学习和开发个人认为CE已经是足够的了!

卸载旧版本

Docker的旧版本被称为dockerdocker-engine。 如果安装了这些,请卸载它们以及关联的依赖关系。

sudo yum remove docker                 docker-common                 docker-selinux                 docker-engine

安装Docker CE

可以根据需要以不同的方式安装Docker CE:

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

  • 下载RPM软件包并手动安装并手动管理升级。

    这在诸如在没有访问互联网的空隙系统上安装Docker的情况下是有用的。

  • 在测试和开发环境中,使用自动化便利脚本来安装Docker。

使用存储库进行安装

  • 安装存储库

    • 安装必须的包。yum-utils提供了yum-config-manager实用程序,并且device-mapper-persistent-datalvm2需要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
    • 可选:启用test和edge。 这些存储库包含在上面的docker.repo文件中,但默认情况下禁用。 您可以将它们与稳定版本库一起启用。

      sudo yum-config-manager --enable docker-ce-edge
      
      sudo yum-config-manager --enable docker-ce-test
    • 可以通过运行带有--disable标志的yum-config-manager命令来禁用edge或test库。 要重新启用它,请使用--enable标志。 以下命令禁用edge存储库。

      sudo yum-config-manager --disable docker-ce-edge

从Docker 17.06开始,稳定的版本也被推到了edge和test存储库

安装

  1. 安装最新版本的Docker CE,或转到下一步安装特定版本。
sudo yum install docker-ce

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

如果这是您第一次从最近添加的存储库安装软件包,系统将提示您接受GPG密钥,并显示密钥的指纹。 验证指纹是否正确,如果是,请接受密钥。 指纹应该匹配

060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35

技术分享图片

Docker已安装但未启动。 Docker组已创建,但没有用户添加到组中。

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

docker-ce.x86_64            17.09.ce-1.el7.centos             docker-ce-stable

列表的内容取决于启用哪些存储库,并且将特定于您的CentOS版本(在本示例中由版本的.el7后缀表示)。 选择要安装的特定版本。 第二列是版本字符串。 您可以使用整个版本字符串,但您至少需要包含第一个连字符。 第三列是存储库名称,它指示软件包的存储库以及其稳定性级别。 要安装特定版本,请将版本字符串附加到包名称,并用连字符(-)分隔。

版本字符串是包名称加上直到第一个连字符的版本。 在上面的示例中,完全限定的包名称是docker-ce-17.09.ce

sudo yum install <FULLY-QUALIFIED-PACKAGE-NAME>

3.启动Docker

sudo systemctl start docker

4.通过运行hello-world映像来验证Docker是否正确安装。

sudo docker run hello-world

此命令下载hello-world图像并在容器中运行它。 当容器运行时,它打印一条信息消息并退出。

技术分享图片

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

从包装中安装

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

1访问https://download.docker.com/linux/centos/7/x86_64/stable/Packages/并下载要安装的Docker版本的.rpm文件。

要安装edge包,请将上述URL中的stable更改为edge。

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

sudo yum install /path/to/package.rpm

Docker已安装但未启动。 Docker组已创建,但没有用户添加到组中。

3.启动Docker

sudo systemctl start docker

4.通过运行hello-world映像来验证Docker是否正确安装。

sudo docker run hello-world

此命令下载hello-world图像并在容器中运行它。 当容器运行时,它打印一条信息消息并退出。

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

升级Docker

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

使用便利脚本进行安装

Docker在get.docker.com和test.docker.com上提供了方便的脚本,用于将Docker CE的稳定和测试版本,快速、非交互式安装到开发环境中。 脚本的源代码位于docker-install存储库中。 不建议在生产环境中使用这些脚本,您应该在使用这些脚本之前了解潜在的风险:

  • 脚本需要root或sudo权限才能运行。 因此,在运行脚本之前,应仔细检查和审核脚本。
  • 这些脚本尝试检测您的Linux发行版和版本,并为您配置您的软件包管理系统。 此外,脚本不允许您自定义任何安装参数。 这可能导致不受支持的配置,无论是从Docker的角度还是从您自己的组织的准则和标准。
  • 脚本安装包管理器的所有依赖关系和建议,而不要求确认。这可能会安装大量的软件包,具体取决于主机的当前配置。
  • 如果Docker已经使用其他机制安装在主机上,则不要使用便利脚本。

此示例使用get.docker.com上的脚本在Linux上安装最新的Docker CE版本。 要安装最新的测试版本,请改用test.docker.com。 在下面的每个命令中,将每次出现的gettest进行替换。

警告:在本地运行之前,始终检查从互联网下载的脚本。

 curl -fsSL get.docker.com -o get-docker.sh
 sudo sh get-docker.sh

<output truncated>

If you would like to use Docker as a non-root user, you should now consider
adding your user to the "docker" group with something like:

  sudo usermod -aG docker your-user

Remember that you will have to log out and back in for this to take effect!

WARNING: Adding a user to the "docker" group will grant the ability to run
         containers which can be used to obtain root privileges on the
         docker host.
         Refer to https://docs.docker.com/engine/security/security/#docker-daemon-attack-surface
         for more information.

Docker CE已安装。 它在基于DEB的发行版上自动启动。 在基于RPM的发行版中,您需要使用适当的systemctlservice命令手动启动它。 消息显示,非root用户默认情况下无法运行Docker命令。

使用方便脚本后升级

如果使用便捷脚本安装Docker,则应直接使用程序包管理器升级Docker。 重新运行方便脚本没有任何好处,如果尝试重新添加已经添加到主机的存储库,可能会导致问题。

卸载 Docker CE

  • 卸载Docker包
sudo yum remove docker-ce
  • 主机上的图mages, containers, volumes或自定义配置文件不会自动删除。 删除所有mages, containers, volumes:
sudo rm -rf /var/lib/docker

必须手动删除任何定义配置文件。

CentOS 安装 Docker

标签:字符串   建议   需要   使用   需求   企业   自己   blog   namespace   

原文地址:https://www.cnblogs.com/oneTOinf/p/8450177.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!