Docker概述以及在Centos环境安装配置与测试


学习视频链接,示以尊重:https://space.bilibili.com/95256449/video


一、Docker概述
1.1 为什么出现

一款产品的开发到上线需要多套环境,而环境配置是一件十分繁琐的事情,每一台机器都需要部署环境(集群Redis、ES、Hadoop…),并且一些配置还不能够跨平台。这时就会考虑,当发布一个项目(jar + (Redis、MySQL、JDK、ES…))时,项目能否带上环境相关配置(Docker中称作镜像)一起打包

  • 传统的方式:开发产品的人员将产品打包为jar包或者war包;之后产品的上线和环境配置等工作交给运维人员来做。
  • 现在的方式:开发打包部署上线,都由开发人员一套流程搞定。

Docker 就是为了解决以上问题被提出。核心思想是:隔离(集装箱,每个箱子是相互隔离的)。Docker 通过隔离机制,可以将服务器利用到极致。

1.2 可以做什么

2010 年,dotcloud公司在美国成立,将自己的技术(容器化技术)命名为 Docker。

在容器技术出现之前,都是使用虚拟机技术。

  • 虚拟机:例如在windows中装一个Vmware,通过这个软件可以在一台机器上虚拟出多台机器,十分笨重且消耗空间。
  • 虚拟机和Docker容器技术都属于虚拟化技术。

虚拟机技术特点:

  • 资源占用多
  • 冗余步骤多
  • 启动很慢

容器化技术:容器化技术不是模拟的一个完整的操作系统。

  • 应用更快速地交付和部署
  • 更快捷地升级和扩缩容
  • 更简单地系统运维
  • 更高效地计算资源利用

比较Docker和虚拟机技术的不同:

  • 传统虚拟机,虚拟出一套硬件,运行一个完整的操作系统,然后在这个系统上安装和运行软件。
  • Docker容器技术,容器内应用直接运行在主机操作系统上,容器没有自己的操作系统内核,也没有虚拟一套硬件,所以很轻便。
  • 每个容器间相互隔离,每个容器内都有属于自己的文件系统,互不影响。

二、Docker中的概念

**镜像(image):**Docker镜像就好比是一个模板,可以通过这个模板来创建容器服务,例如:tomcat镜像->run->tomcat01容器(提供服务器),通过这个镜像可以创建多个容器(最终的服务运行就是在容器中)。

**容器(container):**Docker利用容器技术,独立运行一个或者一组应用,通过镜像来创建。目前可以将容器理解为简易的linux系统。

**仓库(repository):**存放镜像的地方。仓库分为公有仓库和私有仓库。

在这里插入图片描述


三、安装Docker

1、卸载旧有 Docker

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

2、需要的安装包

yum install -y yum-utils

3、设置镜像仓库(使用阿里云镜像地址,国外地址很慢)

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

4、安装Docker引擎

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

注意,这一步如果遇到报错containerd.io版本过低,可以先执行如下命令再安装Docker引擎:

wget https://download.docker.com/linux/centos/7/x86_64/edge/Packages/containerd.io-1.2.6-3.3.el7.x86_64.rpm

yum install -y  containerd.io-1.2.6-3.3.el7.x86_64.rpm

5、启动Docker

systemctl start docker

6、查看Docker版本,查看是否正常启动

docker version

7、运行 hello-world 镜像(执行此命令时,会先从本地寻找镜像,本地找不到就会去Docker Hub寻找,如果仍然找不到就会报错)

docker run hello-world

8、查看 hello-world 镜像

docker images

了解:卸载Docker

yum remove docker-ce docker-ce-cli containerd.io

rm -rf /var/lib/docker

四、阿里云镜像加速

1、登录阿里云,选择容器镜像服务

2、选择镜像加速器

3、选择自己对应的操作系统

4、根据其内容进行配置(依次执行如下四条命令,注意每个服务器的命令是不同的)

sudo mkdir -p /etc/docker

sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://d3jwb2c4.mirror.aliyuncs.com"]
}
EOF

sudo systemctl daemon-reload

sudo systemctl restart docker

五、Docker底层原理

Docker是一个C/S结构的系统,Docker的守护进程运行在主机上。通过socket从客户端W进行访问。

Docker-Server接受到Docker-Client的指令,就会执行这个命令。

在这里插入图片描述

Docker为什么比VM更快?

  • Docker有着比虚拟机更少的抽象层
  • Docker利用的是宿主机的内核,而VM需要搭建新的虚拟机内核

在这里插入图片描述


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值