Linux(CentOS7)中安装Docker

什么是Docker?

Docker是一个开源项目, 诞生于2013年初,最初是dotCloud公司内部的一个业余项目。它基于Google公司推出的Go语言实现。项目后来加入了Linux基金会,遵从了Apache 2.0协议,项目代码在GitHub 上进行维护。

Docker项目的目标是实现轻量级的操作系统虚拟化解决方案。Docker的基础是Linux容器(LXC)等技术。在LXC的基础上Docker进行了进一步的封装,让用户不需要去关心容器的管理,使得操作更为简便。用户操作Docker的容器就像操作一个快速轻量级的虚拟机一样简单。

为什么要使用Docker?

Docker 相比传统虚拟机有诸多优势。

  • 启动速度更快: 秒级启动。
  • 快速的部署和交付: 开发者可以使用一个标准的镜像来构建一套开发容器,开发完成之后, 运维人员可以直接使用这个容器来部署代码。
  • 更高效的虚拟化: 它是内核级的虚拟化,因此可以实现更高的性能和效率。
  • 高效的迁移: Docker可以运行在不同的平台,用户可以轻松的将一个应用从一个平台迁移到另一个平台。
  • 节省开支: Docker容器除了运行其中应用外,基本不消耗额外的系统资源,一台设备可以运行上千个容器。

Docker基本概念

Docker包括三个基本概念

  • 镜像(Image)

Docker提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载一个已经做好的镜像来直接使用。镜像可以用来创建Docker容器。

  • 容器(Container)

容器是从镜像创建的运行实例。它可以被启动、开始、停止、 删除。每个容器都是相互隔离的、保证安全的平台。

  • 仓库(Repository)

仓库是集中存放镜像文件的场所。仓库分为公开仓库(Public)和私有仓库(Private) 两种形式。

最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。

仓储/镜像/容器这几个概念:

​ Docker 本身是一个容器运行载体或称之为管理引擎。我们把应用程序和配置依赖打包好形成一个可交付的运行环境,这个打包好的运行环境就似乎 image镜像文件。只有通过这个镜像文件才能生成 Docker 容器。image 文件可以看作是容器的模板。Docker 根据 image 文件生成容器的实例。同一个 image 文件,可以生成多个同时运行的容器实例。

1.image 文件生成的容器实例,本身也是一个文件,称为镜像文件。

2.一个容器运行一种服务,当我们需要的时候,就可以通过docker客户端创建一个对应的运行实例,也就是我们的容器

3.至于仓储,就是放了一堆镜像的地方,我们可以把镜像发布到仓储中,需要的时候从仓储中拉下来就可以了。

CentOS7.3安装docker

docker官网:
https://www.docker.com/
Docker hub官网:
https://hub.docker.com/

1.官方安装手册参考

https://docs.docker.com/engine/install/centos/

2.确定是Centos7及以上版本

cat /etc/redhat-release

3.yum安装gcc相关

yum -y install gcc

yum -y install gcc-c++

4.卸载旧版本

sudo yum remove docker \

docker-client \

docker-client-latest \

docker-common \

docker-latest \

docker-latest-logrotate \

docker-logrotate \

docker-engine

5.使用存储库安装

sudo yum install -y yum-utils

sudo yum-config-manager \

    --add-repo \

    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
(换阿里源)
6.安装docker sudo yum -y install docker-ce docker-ce-cli containerd.io 7.启动docker sudo systemctl start docker 8.通过运行hello-world 映像来验证是否正确安装了Docker Engine sudo docker run hello-world 9.卸载docker systemctl stop docker yum -y remove docker-ce rm -rf /var/lib/docker

配置本机镜像加速

1.新建docker目录

sudo mkdir -p /etc/docker

2.在 /etc/docker/下创建daemon.json,并添加内容

vi /etc/docker/daemon.json

{

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

}
通过阿里云获得加速地址
3.设置生效,并启动docker sudo systemctl daemon-reload sudo systemctl restart docker

Docker是怎么工作的?

Docker是一个Client-Server结构的系统,Docker守护进程运行在主机上, 然后通过Socket连接从客户端访问,守护进程从客户端接受命令并管理运行在主机上的容器。 容器,是一个运行时环境,就是我们前面说到的集装箱。

为什么docker比VMware快?

(1)docker有着比虚拟机更少的抽象层。由亍docker不需要Hypervisor实现硬件资源虚拟化,运行在docker容器上的程序直接使用的都是实际物理机的硬件资源。因此在CPU、内存利用率上docker将会在效率上有明显优势。

(2)docker利用的是宿主机的内核,而不需要Guest OS。因此,当新建一个容器时,docker不需要和虚拟机一样重新加载一个操作系统内核。仍而避免引寻、加载操作系统内核返个比较费时费资源的过程,当新建一个虚拟机时,虚拟机软件需要加载Guest OS,返个新建过程是分钟级别的。而docker由于直接利用宿主机的操作系统,则省略了返个过程,因此新建一个docker容器只需要几秒钟。

Linux(CentOS7)中安装Docker的更多相关文章

  1. 【Docker】在Linux系统中安装Docker虚拟机、启动停止重启查看Docker命令

    安装Docker 文章目录 安装Docker Docker虚拟机架构 在Linux系统中安装Docker虚拟机 管理Docker虚拟机 参考资料 Docker虚拟机架构 Docker创建的所有虚拟实例 ...

  2. Docker(一) - CentOS7中安装Docker - (视频教程)

    Docker的使用越来越多,安装也相对简单.本文使用视频的方式展示在CentOS7系统中安装Docker,本文更适合于准备入门学习Docker的童靴. 以下视频,请带上耳机开始聆听 (双击全屏播放) ...

  3. Docker - 在CentOS7中安装Docker

    在CentOS 7中安装Docker 1-确认系统信息 # cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) # uname - ...

  4. Linux(centos7)下安装Docker

    近期公司开始推Docker技术.这个系列的文章都是基于CentOS7系统下进行讲解的. Docker简介 Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器 ...

  5. 在Centos7中安装Docker并实例化Mysql

    首先 本文是一篇安装流程,从初始的Centos7安装Docker后实例化一个Mysql的整个流程,其中会包含一些需要注意的疑点和坑. 实例化的Mysql是将数据和配置保存在宿主机. 注意,在安装Doc ...

  6. Linux CentOS7.x安装docker全过程

    1.在安装docker之前,首先使用yum -y remove docker命令移除系统中已有的旧版本的docker yum -y remove docker 这里显示该系统没有安装过docker: ...

  7. Linux Centos7 离线安装docker 【官网翻译和注释】

    Centos7的Docker安装 需要一个维护版本的centos7,所以6不行. 卸载旧版本 旧版本的docker被称为 docker or docker-engine 如果存在请删除它们. sudo ...

  8. Linux Centos7(Mac)安装Docker

    docker 强调隔离性 docker:官网 docker:镜像官网:        镜像官网可以所有应用,选择安装环境:会给出安装命令,例如:docker pull redis 默认拉取最新的版本( ...

  9. Centos7中安装Docker

    1.配置docker镜像安装源 tee /etc/yum.repos.d/docker.repo <<-'EOF' [dockerrepo] name=Docker Repository ...

  10. 在windows10 Linux (centos7)中安装go golang (够浪) 并测试运行

    官方下载安装页面 https://golang.org/doc/install git主页 https://github.com/golang/go 相关下载地址 https://golang.org ...

随机推荐

  1. 【Word】通配符和特殊字符

    [Word]通配符和特殊字符 ^p 换行符 正则表达式 使用\转义,用于[]等 参考资料 Word通配符怎么用?使用Word通配符的方法

  2. AWT+Swing实现百度图像识别

    1准备 1.1在百度智能云中创建自己的应用,得到API Key和Secret Key 1.2maven导入SDK依赖 2源码 import java.net.URLEncoder; /** * 植物识 ...

  3. docker之安装tomcat

    国内Image仓库地址:https://hub.docker.com/search?q=tomcat 安装tomcat docker pull tomcat 查看Image docker images ...

  4. 12-K8S之调度器、预选策略和优选函数

    目录 调度器.预选策略和优选函数 1.nodeSelector nodeName调度: 2.节点亲和性调度(pod亲和于node节点) 3.pod亲和度调度(pod亲和于pod) 4.pod反亲和性度 ...

  5. nginx 日志分析之 access.log 格式详解

    说明:access.log 的格式是可以自己自定义,输出的信息格式在nginx.conf中设置 一般默认配置如下: http { ... log_format main '$remote_addr - ...

  6. UI基础 - UIAppearance协议

    前言 1 - 在一些 app 中会涉及到更改外观设置的功能,最普遍的就是夜间模式和白天模式的切换,而对于外观的更改必定是一个全局的东西.这在 iOS5 以前想要实现这样的效果是比较困难的,但是 iOS ...

  7. uniapp改变icon

    <!DOCTYPE html><html lang="zh-CN"> <head> <meta charset="utf-8&q ...

  8. eccodes 使用girb_filter工具

    参考自ECMWF网站https://confluence.ecmwf.int/display/OPTR/ecCodes%3A+GRIB+and+BUFR+data+decoding+and+encod ...

  9. jmeter取样器之KafkaProducerSampler(往kafka插入数据)

    项目背景 性能测试场景中有一个业务场景的数据抽取策略是直接使用kafka队列,该场景需要准备的测试数据是kafka队列里的数据,故需要实现插入数据到kafka队列,且需要实现控制每分钟插入多少条数据. ...

  10. rar 压缩解压

    rar wget https://www.rarlab.com/rar/rarlinux-x64-612.tar.gz # 压缩文件 rar a -r test.rar file # 解压文件 unr ...