Docker CentOS安装

从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE。

  • Docker CE 即社区免费版.
  • Docker EE 即企业版,强调安全,但需付费使用。

这里我们以社区免费版为例,介绍 Docker CE 的安装使用。

Docker支持以下的CentOS版本

目前,CentOS 仅发行版本中的内核支持 Docker。
Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。
Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。

  • CentOS 8 (64-bit)
  • CentOS 7 (64-bit)
  • CentOS 6.5 (64-bit) 或更高的版本

CentOS7安装

这里我们以64bit的CentOS7为例,进行Docker安装。

首先使用uname命令来获取目标机CentOS7的系统版本。
如本机的显示如下:

[root@localhost ~]# uname -r
3.10.0-1062.18.1.el7.x86_64

对照上面的Docker版本支持,可以看到当前CentOS7内核版本为在3.10,是支持docker安装的。

卸载已经安装的Docker

如果系统中以前安装过Docker,可以使用 yum remove 命令卸载以前安装过的版本。

[root@localhost ~]# sudo yum remove docker \
>                   docker-client \
>                   docker-client-latest \
>                   docker-common \
>                   docker-latest \
>                   docker-latest-logrotate \
>                   docker-logrotate \
>                   docker-engine
Loaded plugins: fastestmirror
No Match for argument: docker
No Match for argument: docker-client
No Match for argument: docker-client-latest
No Match for argument: docker-common
No Match for argument: docker-latest
No Match for argument: docker-latest-logrotate
No Match for argument: docker-logrotate
No Match for argument: docker-engine
No Packages marked for removal

由于本机以前没有安装过docker,所以卸载时找不到docker的安装文件。

安装一些必要的系统工具

yum-utils 提供了 yum-config-manager ,并且 device mapper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2

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

添加软件源

系统默认安装镜像源为国外,所以下载安装时会慢,这里我们使用阿里提供的docker-ce安装镜像源进行安装,可以大大提高我们的安装速度。

[root@localhost ~]# sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
Loaded plugins: fastestmirror
adding repo from: http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
grabbing file http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo to /etc/yum.repos.d/docker-ce.repo
repo saved to /etc/yum.repos.d/docker-ce.repo

更新 yum 缓存

[root@localhost ~]# sudo yum makecache fast
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.cn99.com
 * extras: mirrors.cn99.com
 * updates: mirrors.cn99.com
base                                                                                                                                                                                        | 3.6 kB  00:00:00     
docker-ce-stable                                                                                                                                                                            | 3.5 kB  00:00:00     
extras                                                                                                                                                                                      | 2.9 kB  00:00:00     
updates                                                                                                                                                                                     | 2.9 kB  00:00:00     
Metadata Cache Created

安装 Docker-ce

sudo yum -y install docker-ce

docker默认安装目录 /var/lib/docker

启动docker

sudo systemctl start docker

拉取hello-world

在pull hello-word时,有可能因为网速的原因而失败,所以我们可更换镜像源。更换镜像源的方法详见 Docker更换镜像源,更换镜像源后需要重启docker

[root@localhost docker]# docker pull hello-world
Using default tag: latest
latest: Pulling from library/hello-world
Digest: sha256:8e3114318a995a1ee497790535e7b88365222a21771ae7e53687ad76563e8e76
Status: Image is up to date for hello-world:latest
docker.io/library/hello-world:latest
重启docker
[root@localhost ~]# systemctl restart docker

运行hello-world

[root@localhost docker]# docker run hello-world

Hello from Docker!
This message shows that your installation appears to be working correctly.

To generate this message, Docker took the following steps:
 1. The Docker client contacted the Docker daemon.
 2. The Docker daemon pulled the "hello-world" image from the Docker Hub.
    (amd64)
 3. The Docker daemon created a new container from that image which runs the
    executable that produces the output you are currently reading.
 4. The Docker daemon streamed that output to the Docker client, which sent it
    to your terminal.

To try something more ambitious, you can run an Ubuntu container with:
 $ docker run -it ubuntu bash

Share images, automate workflows, and more with a free Docker ID:
 https://hub.docker.com/

For more examples and ideas, visit:
 https://docs.docker.com/get-started/
取消
感谢您的支持,我会继续努力的!
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

Powered by bytekits.com,汇天下文字,成非凡梦想!!!