对Docker的了解及安装

Docker是一种轻量级虚拟化技术,通过命名空间和控制组实现应用隔离。它提供快速启动(毫秒级)、小巧的镜像(仅包含内核)和标准化的打包、部署方式。Docker的优势包括启动速度快、占用空间小、安全性相对较高。适用于应用程序打包、微服务部署、持续集成/持续交付(CI/CD)等场景。安装Docker需要设置阿里云镜像源,并进行网络优化。
摘要由CSDN通过智能技术生成

什么是docker

Docker是一种轻量级的“虚拟机”,是一个开源的应用容器引擎。容器是完全使用沙箱机制,相互之间不会有任何接口

  • 轻量级表示它体积小,灵活
  • 而说它是虚拟机,又不是真正的虚拟机,因为它里面没有系统
  • 开源表示它是免费的

如何实现应用和应用的隔离

  • 应用和应用的隔离,如何进行判断

    以操作系统维度
    应用与应用隔离,在操作系统中,是通过namespaces实现的,只要实现以下6个空间隔离,才能认为两个应用实现了隔离

  • 容器隔离了6个名称空间(namespace资源隔离-用容器化技术封装)

    mount: 文件系统,挂载点——>一个文件系统内,不能重复挂载一个指定目录,例如:/mnt
    user: 操作进程的用户和用户组
    ipc: 信号量、消息队列,共享内存(理解,不同的应用调用内存资源的时候应该使用不同的内存空间)
    net: 网络设备、网络协议栈、端口等

该pid命名空间:进程隔离(PID:进程ID) 。
该net命名空间:管理网络接口(NET:网络)。
该ipc命名空间:管理访问IPC资源(IPC:进程间通信)。
该mnt命名空间:管理文件系统挂载点(MNT:mount) 。
该uts命名空间:隔离内核和版本标识符。(UTS: Unix时间共享系统)。

Docker有哪些优势?和虚拟化比有什么优势

docker把容器化技术做成了标准化平台(docker统一/指定了容器化技术的标准化平台)

使用docker有什么意义

  • docker引擎统一了基础设施环境-docker环境—》image —》封装一个简易的操作系统
  • docker引擎统一了程序打包(装箱)方式-docker镜像—》images
  • docker引擎统一了程序部署(运行)方式-docker 容器——》基于镜像——》运行为容器(可运行的环境)

要求:内核在3.8以上(排除了centos6)
docker 1.30版本迭代docker-ce docker-ee 1.7版本因为企业版和社区版

对比参数虚拟机容器
启动时间慢 (分钟级别)快速(毫秒级别)
占用空间大(整个系统的大小,几G)小(内核大小,几M)
系统隔离逻辑隔离依赖于内核(内核共享)
安全性 (因为隔离性)低(使用原系统内核)

Docker的使用场景

  • 应用程序(封装/构建镜像)——》运维下载,使用容器技术进行运行/发布
  • 打包应用程序简单部署
  • 可脱离底层硬件任意迁移(实现了应用的隔离,将应用拆分并进行解耦),例如:服务器从腾讯云迁移到阿里云
  • 持续集成和持续交付(cI/CD) :开发到测试发布
  • 部署微服务
  • 提供PAAs产品(平台即服务){OpenStack的云主机类似于阿里云的ECS,属于IAAS、Docker (KBS)属于PAAS}

Docker引擎(Docker Engine)

Docker Engine是具有以下主要组件的客户端-服务器应用程序:

  • 服务器是一种长期运行的程序,称为守护程序进程( dockerd命令)。
  • REST API,它指定程序可以用来与守护程序进行通信并指示其操作的接口。
  • 命令行界面(CLI)客户端(docker命令)。

Docker的核心概念

  • 镜像(镜像的压缩包)
  • 容器(实例,通过镜像创建)
  • 仓库(存放镜像的地方)
    公有仓库:Docker官方仓库
    私有仓库:个人化、私有化的仓库

使用yum仓库安装Docker

安装依赖包

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

#yum-utils提供了yum-config-manager
#device mapper存储驱动程序需要device-mapper-persistent-data和lvm2
#Device Mapper 是Linux2.6内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构。

在这里插入图片描述

设置阿里云镜像源

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

在这里插入图片描述

安装Docker-CE

yum install -y docker-ce
systemctl stop firewalld.service
systemctl disable firewalld.service
setenforce 0
vim /etc/selinux/config
SELINUX=disabled

systemctl start docker.service 
systemctl enable docker.service

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

配置阿里云镜像加速,加速地址从自己的阿里云上获取,阿里云官网:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors

获取方式:登录阿里云–>控制台–>在上面搜索容器镜像服务–>左下角的镜像加速器

在这里插入图片描述

在这里插入图片描述

网络优化

vim /etc/sysctl.conf
net.ipv4.ip_forward=1

sysctl -p
service network restart
systemctl restart docker
docker version

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值