Centos7 安装 Docker CE

因为项目中需要使用到Docker,于是经过一番摸索,完成了Docker的安装,写下此篇博客来记录一下:

卸载旧版本的Docker

    Docker的旧版本称为Docker或Docker -engine。如果安装了这些组件,请卸载它们以及相关的依赖项。(如果未安装过Docker,则可直接跳过该步骤)

$ sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine

如果yum报告这些包都没有安装,则没有问题。

安装Docker CE 方法

  • 大多数用户设置Docker的存储库并从中进行安装,以便于安装和升级任务。(存储库安装)
  • 有些用户下载RPM包并手动安装,并完全手动管理升级。这在一些情况下非常有用,比如在没有互联网接入的气隙系统上安装Docker。(RPM包安装)
  • 在测试和开发环境中,一些用户选择使用自动化的方便脚本来安装Docker。 (脚本安装)

使用存储库进行安装

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

设置存储库

     1 . 安装所需的包: yum-utils提供yum-config-manager实用程序,devicemapper存储驱动程序需要device-mapper-persistent-data和lvm2。

$ sudo yum install -y yum-utils \
  device-mapper-persistent-data \
  lvm2

      2.  使用以下命令设置稳定存储库。 即使你还想从边缘或测试存储库安装构建,你始终需要稳定的存储库。

$ 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

$ sudo yum-config-manager --enable docker-ce-test

 你可以通过使用--disable标志运行yum-config-manager命令来禁用边缘或测试存储库。 要重新启用它,请使用--enable标志。 以下命令禁用边缘存储库。

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

安装Docker CE

1. 安装最新版本的Docker CE

$ sudo yum install docker-ce

    如果启用了多个Docker存储库,在yum安装或yum update命令中不指定版本的情况下安装或更新,这可能不适合你的稳定性需求。

2. 安装指定版本的Docker CE

  •     列出并对你的仓库中可用的版本进行排序。 此示例按版本号对结果进行排序,从最高到最低:
$ yum list docker-ce --showduplicates | sort -r

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

返回的列表取决于启用的存储库,并且特定于你的CentOS版本(在此示例中以.el7后缀表示)。

  •  通过其完全限定的包名称安装特定版本,包名称(docker-ce)加上版本字符串(第2列)直到第一个连字符,用连字符( - )分隔,例如,docker-ce- 18.03.0.ce.
$ sudo yum install docker-ce-<VERSION STRING>

3. 启动Docker

$ sudo systemctl start docker

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

$ sudo docker run hello-world

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

更新Docker CE

要升级Docker CE,请按照安装说明选择要安装的新版本。

从包中安装

 如果你无法使用Docker的存储库来安装Docker,则可以下载适用于你的发行版的.rpm文件并手动安装。 每次要升级Docker时都需要下载新文件。

1. 转到>Docker版本库<并下载要安装的Docker版本的.rpm文件。

注意:要安装边缘包,请将上述URL中的单词stable更改为edge。 了解稳定和边缘渠道

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

$ sudo yum install /path/to/package.rpm

3. 启动Docker

$ sudo systemctl start docker

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

$ sudo docker run hello-world

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

更新Docker CE

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

使用脚本安装

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

    1.  脚本需要root或sudo权限才能运行。 因此,在运行脚本之前,应仔细检查和审核脚本。

    2. 这些脚本会尝试检测你的Linux发行版和版本,并为您配置包管理系统。 此外,脚本不允许你自定义任何安装参数。 从Docker的角度或你自己组织的指导方针和标准来看,这可能会导致配置不受支持。

    3.  脚本安装包管理器的所有依赖项和建议,而不要求确认。 这可能会安装大量软件包,具体取决于主机的当前配置。

    4.  该脚本不提供选项来指定要安装的Docker版本,并安装在“边缘”通道中发布的最新版本。

    5.  如果已使用其他机制在主机上安装了Docker,请不要使用便捷脚本。

这个例子使用get.docker.com上的脚本在Linux上安装Docker CE的最新版本。要安装最新的测试版本,请使用test.docker.com。在下面的每个命令中,用test替换get的每个出现。

警告:在本地运行脚本之前,请始终检查从internet上下载的脚本。

$ curl -fsSL https://get.docker.com -o get-docker.sh
$ sudo sh get-docker.sh

<output truncated>

如果您想将Docker用作非根用户,那么现在应该考虑将您的用户添加到Docker组中,方法如下:(请记得注销并重新登录才能生效)

sudo usermod -aG docker your-user

警告:将用户添加到“docker”组会授予他们运行容器的能力,这些容器可用于获取Docker主机上的root权限。 有关更多信息,请参阅Docker守护程序攻击面

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

使用脚本升级DOCKER

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

卸载Docker CE

1.  卸载Docker CE 包

$ sudo yum remove docker-ce

2.   主机上的图像,容器,卷或自定义配置文件不会自动删除。 要删除所有图像,容器和卷:

$ sudo rm -rf /var/lib/docker

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值