centos 卸载docker_1. Docker概述

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 20:33   3985   0

1.1 Docker为什么出现

  • 一款产品开发到上线有两套环境

  • 环境配置十分麻烦,每一个机器都要部署环境(集群Redis,Hadoop..)

  • 项目能不能都带上环境安装打包 => Docker提出解决方案

1.2 虚拟化技术和容器技术

  • 虚拟化技术

    • 虚拟机是完全虚拟了一个主机,运行了一个完整的操作系统,然后在这个系统上安装和运行软件

    • 缺点:资源占用十分多,冗余步骤多,启动慢

fd101f82982ccdc925e4c6f43547e5b9.png

  • 容器化技术

    • 不是完整的模拟了一个操作系统

    • 容器内的应用直接运行在宿主机的内核中,容器是没有自己的内核的,也没有虚拟硬件

    • 每个容器间相互隔离,每个容器内都有一个属于自己的文件系统互不影响

1.2 Docker理解

  • 基于Go语言开发,是一个开源的容器引擎

  • 让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上

  • 可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口

  • 一个完整的Docker由以下几部分组成

    • DockerClient客户端

    • Docker Daemon守护进程

    • Docker Image镜像

    • DockerContainer容器

1.3 Docker的作用

  • 使应用更快速的交付和部署

    • 传统:很多帮助文档,安装程序

    • Docker:打包镜像发布测试,一键运行

  • 更便捷的升级和扩缩容

    • Docker部署应用就像搭积木一样

  • 更简单的系统运维

    • 在容器化后,开发与测试环境都是高度一致的

  • 更高效的计算资源利用

    • Docker是内核级的虚拟化,可以在一个物理机上运行很多个容器示例,服务器的性能可以被压榨到极致

1.4 Docker中的名词概念

  • Docker的架构图

ee5482690cfe3f8f8eba4b8691929a1c.png

  • 镜像(image):相当于一个模板,可以通过这个模板来创建容器服务。我们可以通过这个镜像创建多个容器

  • 容器(container):Docker可以利用容器技术独立运行一个或一组应用,这个容器可以理解为一个简易的操作系统

  • 仓库(repository):存放镜像的地方,分为共有仓库和私有仓库

1.5 安装Docker

  • Linux系统内核

[root@iZbp112qqdfkrbaxhpwdzeZ ~]# uname -r3.10.0-514.26.2.el7.x86_64
  • Linux系统版本

[root@iZbp112qqdfkrbaxhpwdzeZ ~]# cat /etc/os-releaseNAME="CentOS Linux"VERSION="7 (Core)"ID="centos"ID_LIKE="rhel fedora"VERSION_ID="7"PRETTY_NAME="CentOS Linux 7 (Core)"ANSI_COLOR="0;31"CPE_NAME="cpe:/o:centos:centos:7"HOME_URL="https://www.centos.org/"BUG_REPORT_URL="https://bugs.centos.org/"CENTOS_MANTISBT_PROJECT="CentOS-7"CENTOS_MANTISBT_PROJECT_VERSION="7"REDHAT_SUPPORT_PRODUCT="centos"REDHAT_SUPPORT_PRODUCT_VERSION="7"
  • 开始安装

//1.卸载旧的Dockeryum remove docker \  docker-client \  docker-client-latest \  docker-common \  docker-latest \  docker-latest-logrotate \  docker-logrotate \  docker-engine//2.安装yum-utils软件包可以提供yum-config-manager实用程序yum install -y yum-utils//3.设置想要从哪个仓库下载 yum-config-manager \    --add-repo \    http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo   //https://download.docker.com/linux/centos/docker-ce.repo 默认国外docker//4.更新yum软件包索引yum makecache fast//5.安装最新版的Docker Engine和容器(docker-ce社区版,ee是企业版需要授权)yum install docker-ce docker-ce-cli containerd.io//6.启动docker,设置docker为开机自启systemctl start dockersystemctl enable docker//7.查看版本docker version//8.测试helloworlddocker run hello-world//9.查看hello-world镜像docker images//10.卸载docker//    卸载依赖yum remove docker-ce docker-ce-cli containerd.io//    删除目录rm -rf /var/lib/docker//    手动删除所有已编辑的配置文件//11.配置docker镜像加速器//   通过修改daemon配置文件/etc/docker/daemon.json来使用加速器mkdir -p /etc/dockertee /etc/docker/daemon.json <'EOF'{  "registry-mirrors": ["https://sjmzhm90.mirror.aliyuncs.com"]}EOFsystemctl daemon-reloadsystemctl restart docker

1.6 docker原理

  • docker run

2056270f14691be92e00baad5ccda467.png

  • 底层原理

    • Docker是一个Client-Server结构的系统,Docker的守护进程运行在主机上,通过Socket从客户端访问!Docker-Server接受到Docker-Client的指令就会执行该命令

14832e3a98da63b61b25e3cf458ee94e.png

  • Docker为什么比虚拟机快?

    • Docker有着比虚拟机更少的抽象层

26803eca03f9621c664e19690dc19360.png

  • Docker利用的是宿主机的内核,vm需要GuestOS

b9168e0f2cf3278df8ff9e0a93d6ddfa.png

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP