centos7安装docker

一丶先了解下,什么是 Docker?为什么会有 Docker?Docker 的优势?docker的组成?

 1.为什么会有 Docker? 

    我们知道一款产品从开发到上线,从开发环境到生成环境。作为开发和运维人员之间协作需要考虑很多问题,尤其是当我们的产品多版本迭代之后,不同环境之间的兼容就会成为一个大问题;
     这时 Docker 的出现就解决了这一难题,Docker 的出现使我们开发的软件可以“带环境安装”,即安装的时候,可以把原始环境一模一样的的复制过来,不用在担心环境不一致导致“开发时可以正常运行,生成环境就会出问题”,“在我的机器上可以正常运行,在别人的机器上就不能运行”的问题了。

2.什么是docker?

  (1)Docker 就像是一个轻量级的虚拟机,Docker是一个轻量级的容器,我们可以将环境交给 Docker 来管理,当我们需要移植我们的产品的时候,就可以将环境整个的迁移到另一台主机上,而不向虚拟机一样,迁移一台虚拟机极其资源;

  (2)Docker 是一个开源的应用容器引擎,基于 Go 语言开发。

  (3)Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

总之:Docker相较于虚拟机来说具有更加轻量,启动更快,效率更高,可移植性更强等优势,实现了“一次封装,到处运行”,不用在关心环境的不一致问题。

3.docker的优势

(1)运行环境的一致性:Docker 的镜像提供了除了内核之外完整的运行环境,确保了应用运行的一致性;
(2)更快速地启动部署:可以做到秒级,甚至毫秒级的的启动时间。大大节约了开发、测试、部署的时间;
(3)更好的隔离性:每个服务器都是独立运行的、完全隔离的。避免公用的服务器,资源会容易受到其他用户的影响;
(4)弹性伸缩、快速扩展:能够更好的处理集中爆发式的服务器使用压力;
(5)迁移更加方便:“带环境安装”;
(6)持续交付和部署:使用 Docker 可以通过定制镜像来实现持续集成,交付,部署;

4.docker的组成

   ​Docker 是一个 C/S 架构程序。Docker 客户端只需要向 Docker 服务器或者守护进程发出请求,服务器或者守护进程将完成所有工作并返回结果。Docker 提供了一个命令行工具 Docker 以及一整套 RESTful API。你可以在同一台宿主机上运行 Docker 守护进程和客户端,也可以从本地的 Docker 客户端连接到运行在另一台宿主机上的远程 Docker 守护进程。

centos7安装docker_第1张图片

名称 说明
Docker镜像(images) 用于容器创建的模板。基于联合文件系统的一种层式结构,由一系列指令一步一步构建出来。
Docker容器(Container) 容器是独立运行的一个或一组应用,镜像相当于类,容器相当于类的实例
Docker客户端(Client) 通过命令行或其他工具使用Docker API 与Docker的守护进程通信
Docker主机(Host) 一个物理或虚拟机用于执行Docker守护进程和容器
Docker守护进程 是Docker服务器端进程。负责支撑Docker容器的运行和镜像的管理
Docker仓库 DockerHub(Registry)  用来保存镜像,可以理解代码控制中心的代码仓库,可以将自己的镜像推送仓库上供他人下载

5. 基本概念
Docker 包括三个基本概念:

(1)镜像(Image):Docker 镜像(Image),就相当于是一个 root 文件系统。
(2)容器(Container):镜像(Image)和容器(Container)的关系,就像是面向对象程序设计  中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。容器与镜像的关系类似于面向对象编程中的对象与类。Docker 使用客户端-服务器 (C/S) 架构模式,使用远程API来管理和创建Docker容器。Docker 容器通过 Docker 镜像来创建。也可以这样做类比,镜像理解为静态的程序,而容器理解为运行起来后的进程。容器使用写时复制技术,修改后容器的文件是独立的。
(3)仓库(Repository):仓库可看成一个代码控制中心,用来保存镜像。

二、安装前必读

在安装 Docker 之前,先说一下配置,我这里是Centos7
Linux 内核:官方建议 3.10 以上,3.8以上貌似也可。

1.请用root用户登录虚拟机,以保证有足够的权限进行操作。

2.可以使用第三方终端连接虚拟机,这样会让我们配置的效率更高。(推荐CRT)

3.了解: Docker 分为docker SE(社区版,免费)以及docker EE(企业版,收费),因此我们这里安装的是docker SE。

1.查看当前的内核版本

uname -r

 

我这里是3.10 ,满足条件。

2.使用 root 权限更新 yum 包(生产环境中此步操作需慎重,看自己情况,学习的话随便搞)

yum -y update

这个命令不是必须执行的,看个人情况,后面出现不兼容的情况的话就必须update了 

  1. 注意​

  2. yum -y update:升级所有包同时也升级软件和系统内核;​

  3. yum -y upgrade:只升级所有包,不升级软件和系统内核

  4. 也可以其他的命令,更新yum软件包索引:yum maakecache fast

 3.卸载旧版本(如果之前安装过的话)

yum remove docker  docker-common docker-selinux docker-engine

 centos7安装docker_第2张图片

三、安装Docker的详细步骤

1.安装需要的软件包, yum-util 提供yum-config-manager功能,另两个是devicemapper驱动依赖

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

2.设置 yum 源

设置一个yum源,也就是docker ce软件源(看个人习惯,我喜欢用阿里云的)

  1. yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo  (阿里仓库)

centos7安装docker_第3张图片

 3.选择docker版本并安装(安装 docker-ce(社区版))
(1)查看可用版本有哪些

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

centos7安装docker_第4张图片

(2)选择一个版本并安装:yum install docker-ce-版本号 

yum -y install docker-ce-18.03.1.ce                    ---我是下载了这个版本好根据自己喜欢。

提醒:如果没有指定版本号的话,系统是默认下载最新的版本号

命令:yum -y  install docker-ce

centos7安装docker_第5张图片

  (3)查看是否安装成功

查看镜像:docker images

查看版本:docker version

centos7安装docker_第6张图片

 (4)查看Docker的运行状态(一般刚安装好的话都是running状态的)

systemctl status docker

启动命令:systemctl start docker

停止命令:systemctl stop docker

设置开机启动:systemctl enable docker

4.配置Docker镜像加速器(阿里云)

 !!因为docker下载镜像是从docker hub中下载,是国外的,所以下载比较慢,可以看作maven

(1)去到阿里云官方网址,找到容器镜像服务:https://www.aliyun.com
(2)进入管理控制台(这里没有开通服务的需要开通一下容器服务)

(3)点击镜像加速器,选择CentOS

centos7安装docker_第7张图片

centos7安装docker_第8张图片

(4)(注意每个人的配置加速器的都会随机生成的,所以根据你打开后阿里云镜像加速器提供的代码进行配置)(执行文件后会自动生成daemon.json文件)

mkdir -p /etc/docker

tee /etc/docker/daemon.json <<-'EOF'

{

"registry-mirrors": ["https://kskdqwg1.mirror.aliyuncs.com"]

}

EOF

启动docker后台线程:sudo systemctl daemon-reload

重启docker服务 :sudo systemctl daemon-reload

5.使用hello-world镜像测试docker  

运行命令:docker run hello-worldcentos7安装docker_第9张图片

(1)docker run运行思维导图 

centos7安装docker_第10张图片

(2)查看镜像

      docker images

 

 可以看到刚才在执行docker run hello-world的时候,已经将hello-world镜像拉去到本地镜像中了。

四丶常用的操作命令

1.启动与停止命令

命令     解释
systemctl start docker  启动 Docker
systemctl stop docker 停止docker
systemctl status docker 查看docker状态
systemctl restart docker 重启docker
systemctl enable docker     开机启动
docker info    查看docker概要信息
docker --help     查看docker帮助文档

 2.镜像相关命令

命令     解释
docker images 查看本地存在的镜像
docker search 镜像名称 从网络中查找需要的镜像
docker pull 镜像名称 将远程镜像拉取到本地
docker rmi [-f] 镜像ID  (强制)删除本地镜像
docker rmi -f 镜像名1:TAG 镜像名2:TAG  删除多个镜像
docker rmi -f $(docker images -qa)  删除所有镜像

至此centos7安装Docker就完成了。后面将会讲讲如何配置私人仓库,Docker 的应用容器部署,如何构建镜像,部署hadoop集群。

你可能感兴趣的:(Docker,linux,服务器,docker,容器,centos)