Docker

  • Docker和虚拟机的区别
  • Docker出现的原因
  • Docker组成
  • 镜像 容器 仓库
  • 搭建集群
  • 安装Docker


Docker和虚拟机的区别

虚拟机

docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins


Docker

docker比虚拟机启动速度 docker与虚拟机性能比较_Docker_02


Docker与虚拟机相比的区别

主要是Docker少了Guest OS一层,Docker中的所有资源使用都是直接和宿主OS打交道,而虚拟机的资源使用都是先经过Guest OS然后再转换到宿主OS

  • Docker启动快速属于秒级别。虚拟机通常需要几分钟去启动。
  • Docker需要的资源更少,Docker在操作系统级别进行虚拟化,Docker容器和内核交互,几乎没有性能损耗,性能优于通过Hypervisor层与内核层的虚拟化。
  • Docker更轻量,Docker的架构可以共用一个内核与共享应用程序库,所占内存极小。同样的硬件环境,Docker运行的镜像数远多于虚拟机数量。对系统的利用率非常高。
  • 与虚拟机相比,Docker隔离性更弱,Docker属于进程之间的隔离,虚拟机可实现系统级别隔离。

Docker出现的原因

docker比虚拟机启动速度 docker与虚拟机性能比较_Docker_03


docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins_04

Docker组成

docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins_05

镜像 容器 仓库

docker比虚拟机启动速度 docker与虚拟机性能比较_docker比虚拟机启动速度_06

搭建集群

  1. 创建全局net网络

docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins_07


2. 将Docker1虚拟机的网络更改如下

docker比虚拟机启动速度 docker与虚拟机性能比较_运维_08


注意 此时只能保证虚拟机上网,主机ping不通虚拟机 所以还需要进行如下配置

3. 添加第二块儿网卡

docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins_09


上面的这个网卡对应主机上的虚拟网卡

docker比虚拟机启动速度 docker与虚拟机性能比较_Docker_10


4. 配置虚拟机文件

docker比虚拟机启动速度 docker与虚拟机性能比较_Docker_11

查看虚拟机网络结果

docker比虚拟机启动速度 docker与虚拟机性能比较_jenkins_12


其中enp0s3对应nat enp0s8对应虚拟网卡

这样外界就能Ping通虚拟机(192.168.56.104)

自己也能和其他虚拟机ping通(10.0.11.11)

安装Docker

卸载旧的Docker

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

安装Docker工具

sudo yum install -y yum-utils

添加Docker镜像(国内阿里云)

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

阿里云加速

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://663m1ybe.mirror.aliyuncs.com"]
}
EOF
sudo systemctl daemon-reload
sudo systemctl restart docker

安装Docker客户端

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

启动Docker

systemctl start docker

检查Docker是否启动

docker version

删除Docker

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

删除资源

sudo rm -rf /var/lib/docker
 sudo rm -rf /var/lib/containerd
 # /var/lib/docker  docker默认工作目录