CentOS7 安装docker-ce

CentOS7 安装docker-ce

为什么叫docker-ce呢?因为ce是community edition的缩写,意为“社区版本”,一般这种软件都有社区版和商业版的(商业版叫ee:enterprise edition),比如我们最常用的centos,os是“操作系统”的意思,cent是什么?其实就是community enterprise,中文翻译成“社区企业操作系统”,这里的企业就不是指企业版,而是指适合企业生产环境提供服务用的。

Docker CE官方文档:Get Docker CE for CentOS

如果你以前安装过,先删除旧的:

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

安装一些要用到的工具:

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

epel-release:扩展软件源,有很多软件yum安装说找不到包,但是装了这个就可以找到。
yum-utils:yum实用工具,一般情况下应该都安装过了
device-mapper-persistent-data:用设备映射
lvm2:(logical volume manager)逻辑卷管理2代

使用yum实用工具yum-config-manager添加一个docker-ce下载源(stable):

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

其实它就是在yum的/etc/yum.repos.d里添加一个docker-ce.repo文件。

除了上面默认的stable版,你可以也可以允许test版和nightly版,它们的区别如下About Docker CE里有说到:
Stable gives you latest releases for general availability.
Test gives pre-releases that are ready for testing before general availability.
Nightly gives you latest builds of work in progress for the next major release.

允许安装nightly版(非必需)

sudo yum-config-manager --enable docker-ce-nightly

允许安装test版(非必需)

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

允许了之后就可以用yum install docker-ce-nightlyyum install docker-ce-test这样去安装了,当然我们一般不要安装这种版本,因为它是比较新的非稳定的。

安装docker-ce(docker服务器)、docker-ce-cli(docer客户端)和containerd.io(用于管理主机系统的完整容器生命周期,从映像传输和存储到容器执行和监视,再到底层存储、网络附件等等):

sudo yum install docker-ce docker-ce-cli containerd.io

看,其实docker非常小,server+client+containerd.io才57M:
Xnip2019-03-25_14-15-51

虽然三个加起来才57M,但安装后占用了300M左右

#安装前
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        980M     0  980M   0% /dev
tmpfs           997M     0  997M   0% /dev/shm
tmpfs           997M  101M  897M  11% /run
tmpfs           997M     0  997M   0% /sys/fs/cgroup
/dev/vda1        28G  2.9G   24G  11% /
tmpfs           200M     0  200M   0% /run/user/1000

#安装后
Filesystem      Size  Used Avail Use% Mounted on
devtmpfs        980M     0  980M   0% /dev
tmpfs           997M     0  997M   0% /dev/shm
tmpfs           997M   96M  901M  10% /run
tmpfs           997M     0  997M   0% /sys/fs/cgroup
/dev/vda1        28G  3.2G   24G  12% /
tmpfs           200M     0  200M   0% /run/user/1000

如果你要安装指定版本的docker,需要先列出有哪些版本可以安装:

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

比如我这列出这么多:

docker-ce.x86_64            3:18.09.3-3.el7                    docker-ce-stable
docker-ce.x86_64            3:18.09.3-3.el7                    @docker-ce-stable
docker-ce.x86_64            3:18.09.2-3.el7                    docker-ce-stable
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.3.ce-3.el7                   docker-ce-stable
docker-ce.x86_64            18.06.2.ce-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
docker-ce.x86_64            18.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                   docker-ce-stable
docker-ce.x86_64            17.03.2.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos            docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos            docker-ce-stable

安装的时候也跟前面类似,只不过要指定版本(这个到底是哪个呢?比如18.09.317.03.2,反正三个数字xx.xx.xx格式的就是版本了):

sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

安装好之后,启动docker:

sudo systemctl start docker

启动后查看一下进程:

ps aux | grep docker

或者用systemctl查看一下服务状态也行:

systemctl status docker

如果无法启动,有可能内核不够新,需要安装内核,以下是安装bbr加速,会自动安装最新内核,如果你不需要安装bbr加速,或者不需要最新内核,请自行查找更新内核的方法:

wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh

运行个hello-world试试是否正常:

sudo docker run hello-world

输出结果如下,第一句“Unable to find image ‘hello-world:latest’ locally”表示本地不存在这个hello-world:latest镜像,所以它会自动去dockerhub下载然后再运行:

Unable to find image 'hello-world:latest' locally
latest: Pulling from library/hello-world
1b930d010525: Pull complete
Digest: sha256:2557e3c07ed1e38f26e389462d03ed943586f744621577a99efb77324b0fe535
Status: Downloaded newer image for hello-world:latest

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/

到这里就完成了linux版docker-ce的安装了,Enjoy!

打赏

Leave a Reply

avatar

This site uses Akismet to reduce spam. Learn how your comment data is processed.

  Subscribe  
Notify of

扫码在手机查看
iPhone请用自带相机扫
安卓用UC/QQ浏览器扫

CentOS7 安装docker-ce