Docker | 第二章:第一个Docker应用

前言

上一章节,已经简单讲解了Docker相关方面的知识,相信大家已经有个概念了。这章节开始,开始进行实践操作。和学习任何一门语言一样,我们今天也开始从Hello,World开始~

Docker不了解的,可查看下第一章:Docker简介

CentOS系统Docker安装

现在的Docker已经能支持WindowsMacLinux的各大操作系统了。但在生产阶段,应该Linux才是主流。其他的平台还是主要以学习为主。但对于Linux平台而言,又有CentOSDebianFedoraUbuntu等等不同的发行版。不同的发行版安装过程是稍有不同的。本章节主要是以CentOS版本进行讲解,安装的是社区版Docker CE版,其他的发行版可自行搜索下,或者查看其官方安装文档,里面有详细说明的。对于Windows,之前有安装过,不好用。而Mac,没有环境呀。

前提条件

To install Docker CE, you need a maintained version of CentOS 7. Archived versions aren’t supported or tested.

The centos-extras repository must be enabled. This repository is enabled by default, but if you have disabled it, you need to re-enable it.

The overlay2 storage driver is recommended。

请容许我用蹩脚的翻译说明大致说明下:需要一个发行版的CentOS 7(64位)版本,不支持测试或者存档版本。同时需要开启centos-extras软件源,建议使用overlay2存储驱动(这个是真心不懂,求知道的大神答疑,谷歌后是说这样模式能提高性能,加快速度)。

所以,大家在安装前可以检查下这些条件是否满足,以下是本章节演示的阿里云ECS的系统版本:

LSB Version: :core-4.1-amd64:core-4.1-noarch
Distributor ID: CentOS
Description: CentOS Linux release 7.4.1708 (Core)
Release: 7.4.1708
Codename: Core

使用yum安装

因为Docker已经默认在centos-extras源了,所以可以直接使用yum命令进行安装。

题外话:对于已经安装了旧的版本(dockerdocker-engine)的同学,可以利用以下命令进行卸载。

$ 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

安装命令

sudo yum install docker-ce

**或者 **

sudo yum -y install docker-ce

题外话:加没加-y的区别:如果使用yum install xxxx,会找到安装包之后,询问你Is this OK[y/d/N],需要你手动进行选择。但是如果加上参数-y,就会自动选择y,不需要你再手动选择!

yum -y install 包名(支持*) :自动选择y,全自动 
yum install 包名(支持*) :手动选择y or n

回车后,就等着安静的下载吧。

控制台输出:

#前面大段忽略...
Dependency Updated:
  audit.x86_64 0:2.8.1-3.el7                                  audit-libs.x86_64 0:2.8.1-3.el7              libselinux.x86_64 0:2.5-12.el7                    
  libselinux-python.x86_64 0:2.5-12.el7                       libselinux-utils.x86_64 0:2.5-12.el7         libsemanage.x86_64 0:2.5-11.el7                   
  libsepol.x86_64 0:2.5-8.1.el7                               policycoreutils.x86_64 0:2.5-22.el7          selinux-policy.noarch 0:3.13.1-192.el7_5.4        
  selinux-policy-targeted.noarch 0:3.13.1-192.el7_5.4        

Complete!

安装ing

友情提示:若安装过程中,提示类似No package docker-ce available.字样时,可尝试按一下步骤进行软件源的更新。
1.安装基础包

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

其中yum-utils提供yum-config-manager功能,另外两个是devicemapper驱动依赖。

2.设置yum源(由于国内环境,这里直接使用了阿里云镜像地址)

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

设置yum源

3.之后正常应该就可以了,若安装后还提示类似的:

https://download.docker.com/linux/centos/repodata/repomd.xml: [Errno 14] HTTPS Error 404 - Not Found

字眼,可查看下/etc/yum.repos.d目录下的docker-ce.repo文件是否包含
https://download-stage.docker.com字眼,直接替换成http://mirrors.aliyun.com/docker-ce(网友提供,未发现此问题。出问题时,可检查下),或者目录中有包含download.docker.com_linux_centos_.repo(未替换阿里云镜像加了官网的源地址是出现)文件的,删除此文件即可。

另外,若需要安装特定版本时,可查看下版本列表:

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

可用版本

比如,选定了18.03.1.ce-3.el7(第三行),则运行

# yum install <FULLY-QUALIFIED-PACKAGE-NAME>
# 注意:包名是截取第一列和第二列的部分值组合而成
sudo yum install docker-ce-18.03.1.ce

启动docker

sudo systemctl start docker

然后输入一下命令进行验证:

sudo docker info

docker info

说明已经安装成功了。

安装阿里云加速器

安装成功后,还需要安装下加速器,原因你懂的。这里直接使用阿里云的镜像,大家可在阿里云控制台进行查看。

查看目录:

控制台首页(产品与服务)-->容器镜像服务--->镜像加速器

文件/etc/docker/daemon.json(不存在,手动创建下daemon.json文件),内容为:

{
  "registry-mirrors": ["https://镜像地址.mirror.aliyuncs.com"]
}

第一个Docker应用

以上步骤完成后,我们就能开心的使用Docker了。这里我们直接运行官方提供的Hello,world镜像

sudo docker run hello-world

当出现以下字眼时,表明运行成功了。

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

helloworld

此时,查看镜像列表,就可以看见此镜像信息了。

镜像列表

总结

本章节主要是介绍了下Docker的安装和运行了第一个Docker应用。总体来说是比较简单的,主要可能遇到的问题还是在yum源上。其他的应该都简单了。对于使用rpm包直接安装的,本章节就不阐述了,其实就下载了包后,直接安装即可(yum install rpm包路径)。好了,环境安装好后,下一章节开始介绍下Docker常用命令,敬请期待!

最后

若文中有错误或者遗漏之处,还望指出,共同进步!

参考资料

  1. https://docs.docker.com/install/linux/docker-ce/centos/
  2. RPM包下载的地址:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/

老生常谈

  • 个人QQ:499452441
  • 微信公众号:lqdevOps

公众号

个人博客:http://blog.lqdev.cn

原文地址:http://blog.lqdev.cn/2018/07/31/docker/docker-two/

原文地址:https://www.cnblogs.com/okong/p/docker-two.html