前言

Docker 使用越来越多,安装也很简单,本次记录一下基本的步骤。

Docker 目前支持 CentOS 7 及以后的版本,内核要求至少为 3.10。

Docker 官网有安装步骤,本文只是记录一下,您也可以参考 Get Docker CE for CentOS

环境说明

CentOS 7(Minimal Install)

cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)

准备工作

操作系统要求

CentOS 7 以后都可以安装 Docker 了,也可以确认一下。

uname -a
Linux localhost.localdomain 3.10.0-957.1.3.el7.x86_64 #1 SMP Thu Nov 29 14:49:43 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

Docker 需要用到 centos-extra 这个源,如果您关闭了,需要重启启用,可以参考 Available Repositories for CentOS

卸载旧版本

旧版本的 Docker 被叫做 docker 或 docker-engine,如果您安装了旧版本的 Docker ,您需要卸载掉它。

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

旧版本的内容在 /var/lib/docker 下,目录中的镜像(images), 容器(containers), 存储卷(volumes), 和 网络配置(networks)都可以保留。

Docker CE 包,目前的包名为 docker-ce

安装

安装准备

为了方便添加软件源,支持 devicemapper 存储类型,安装如下软件包

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

添加 yum 软件源

添加 Docker 稳定版本的 yum 软件源

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

我们也可以用阿里云的docker镜像,不然安装docker非常慢

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装 Docker

更新一下 yum 软件源的缓存,并安装 Docker。

sudo yum update
sudo yum install docker-ce

如果弹出 GPG key 的接收提示,请确认是否为 060a 61c5 1b55 8a7f 742b 77aa c52f eb6b 621e 9f35,如果是,可以接受并继续安装。

至此,Docker 已经安装完成了,Docker 服务是没有启动的,操作系统里的 docker 组被创建,但是没有用户在这个组里。

注意

默认的 docker 组是没有用户的(也就是说需要使用 sudo 才能使用 docker 命令)。
您可以将用户添加到 docker 组中(此用户就可以直接使用 docker 命令了)。

加入 docker 用户组命令

sudo usermod -aG docker USER_NAME

用户更新组信息后,重新登录系统即可生效。

安装指定版本

如果想安装指定版本的 Docker,可以查看一下版本并安装。

yum list docker-ce --showduplicates | sort -r

docker-ce.x86_64  3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64 3:18.09.0-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.1.ce-3.el7 docker-ce-stable
docker-ce.x86_64 18.06.0.ce-3.el7 docker-ce-stable

可以指定版本安装,版本号可以忽略 : 和 el7,如 docker-ce-18.09.1

sudo yum install docker-ce-<VERSION STRING>

至此,指定版本的 Docker 也安装完成,同样,操作系统内 docker 服务没有启动,只创建了 docker 组,而且组里没有用户。

启动 Docker

如果想添加到开机启动

sudo systemctl enable docker

启动 docker 服务

sudo systemctl start docker

重启 docker服务

sudo systemctl restart docker

验证安装

验证 Docker CE 安装是否正确,可以运行 hello-world 镜像

sudo docker run hello-world

更新和卸载 Docker

使用 yum 管理,更新和卸载都很方便。

更新 Docker CE

sudo yum update docker-ce

卸载 Docker CE

sudo yum remove docker-ce

删除本地文件

注意,docker 的本地文件,包括镜像(images), 容器(containers), 存储卷(volumes)等,都需要手工删除。默认目录存储在 /var/lib/docker

sudo rm -rf /var/lib/docker

结论

本文演示了 CentOS 7 下 yum 安装 Docker CE 的步骤。

参考资料

Get Docker CE for CentOS
Available Repositories for CentOS

原文地址 :https://qizhanming.com/blog/2019/01/25/how-to-install-docker-ce-on-centos-7

CentOS7 下 yum 安装 Docker CE的更多相关文章

  1. centos7 下 yum 安装Nginx

    centos7 下 yum 安装和配置 Nginx 添加yum源 Nginx不在默认的yum源中,可以使用epel或者官网的yum源,这里使用官网的yum源 rpm -ivh http://nginx ...

  2. Centos7下yum安装kubernetes

    一.前言    Kubernetes 是Google开源的容器集群管理系统,基于Docker构建一个容器的调度服务,提供资源调度.均衡容灾.服务注册.动态扩缩容等功能套件,目前centos yum源上 ...

  3. centos7通过yum安装docker

    ##yum源安装#1.更新yumyum update #2.删除旧版本yum remove docker \docker-client \docker-client-latest \docker-co ...

  4. CentOS7.0 yum安装 docker

    一.安装docker 1.Docker 要求 CentOS 系统的内核版本高于 3.10 ,查看本页面的前提条件来验证你的CentOS 版本是否支持 Docker . root 用户登录操作! 通过  ...

  5. Centos7 下Yum安装OpenLdap

    网上的教程一大堆,也没用具体说明版本,所以很多操作方法都不一样,把我踩过的坑记录下来 环境: Centos7 OpenLdap 2.4.44 openldap新版本和老版本的配置方法差别特别大 安装步 ...

  6. 【已解决】CentOS7使用yum安装Docker显示错误:cannot find a valid baseurl for repo: base/7/x86_64

    不得不说,Docker 要求 CentOS 系统的内核版本高于 3.10,这就让有些人开始头疼了,而要查看具体的版本可以用以下命令 uname -r 当然,CentOS 6.8版本也能安装Docker ...

  7. 【转】Centos7下Yum安装PHP5.5,5.6,7.0

    默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | grep php 如果有安装的PHP包,先删除他们 ...

  8. Centos7下yum安装配置nginx与php

    实现LNMP环境搭建. 开始安装Nginx和PHP-FPM之前,首先卸载系统中以前安装的Apache和PHP保证安装不会冲突.用root登录输入下面的命令: yum remve httpd* php* ...

  9. Centos7下Yum安装PHP5.5,5.6,7.0

    默认的版本太低了,手动安装有一些麻烦,想采用Yum安装的可以使用下面的方案: 1.检查当前安装的PHP包 yum list installed | grep php 如果有安装的PHP包,先删除他们 ...

随机推荐

  1. vue-cli随机生成port源码

    const portfinder = require('portfinder'): const port = await portfinder.getPortPromise(): 两行代码 端口搜索范 ...

  2. 如何开发出成功的iOS应用(流程图)

    转自:http://mobile.51cto.com/hot-307342.htm 近来,肥沃的应用开发土壤不断孕育出一个个振奋人心的故事,成千上万的人都觊觎从这个机遇无限的领域中分一杯羹.虽然现在的 ...

  3. 配置DirectX SDK开发环境

    创建工程 选择空工程 添加源文件 添加DirectX SDK测试程序 属性配置 添加头文件和库文件路径 D:\Microsoft DirectX SDK (February 2010)\Include ...

  4. gdb gdbtui

    1. gdbtui 打开tui模式 gdbtui a.out gdb -tui a.out 调试一个正在运行的进程 gdb -p pid 在linux自带的终端里是正常显示的,但是在securecrt ...

  5. 【LINQ】Select与SelectMany的区别

    Select() 和 SelectMany() 的工作都是依据源值生成一个或多个结果值.Select() 为每个源值生成一个结果值.因此,总体结果是一个与源集合具有相同元素数目的集合.与之相反,Sel ...

  6. CentOS6.7编译安装mysql5.6

    可能因为有各种情况,无法通过yum安装mysql,这里记录一下编译安装的简单步骤 使用yum安装一些依赖 yum -y install make gcc-c++ cmake bison-devel  ...

  7. Linux下bash的一些总结

    关于"交互式-非交互式"与"登录-非登陆"shell的总结 关于".bash_profile"和".bashrc"区别的 ...

  8. nginx proxy_pass 指令

    nginx proxy_pass 指令 文档 Nginx 官方文档 https://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_pa ...

  9. ActiveMQ消息可靠性-持久性

    三个方面保证消息的可靠性 1.消息的持久 2.事物 3.签收 一:PERSISTENT:持久性   参数说明:1.持久   2.非持久 Java里面设置持久化和非持久 持久: 将持久性设置为持久 宕机 ...

  10. cookies , sessionStorage 及 localStorage 的初步的区别

    cookies  保存在浏览器中,关闭浏览器后再次打开,任然存在,当然可能存在一定的有效期.(仅限存在同一台电脑,同一个浏览器中)  Session依赖Cookie!! sessionStorage  ...