十二、Docker的简介

目录

一、介绍

[Docker 主要由以下三个部分组成:](#Docker 主要由以下三个部分组成:)

[Docker 有许多优点,包括:](#Docker 有许多优点,包括:)

二、Docker和虚拟机的差异

三、镜像和容器

[四、Docker Hub](#四、Docker Hub)

五、Docker架构

六、总结


一、介绍

Docker 是一种开源的应用容器平台,可以在容器内部运行应用程序。Docker 可以自动化部署、打包和运行应用程序,使得应用程序可以在不同的环境中快速、可靠地运行,提高了应用程序的可移植性,并降低了管理和维护的成本。

Docker 使用容器技术实现应用程序的封装和运行。容器是一种轻量级的虚拟化技术,可以将应用程序和所有依赖项打包在一起,形成一个独立的运行环境,同时也提供了隔离和安全性保障。与传统的虚拟机技术相比,容器具有更小的体积和更高的性能,可以在任何支持 Docker 的平台上运行。

Docker 主要由以下三个部分组成:

  1. Docker Engine - 主要包括 Docker Daemon 和 Docker CLI,是 Docker 的核心组件,负责在主机上创建和管理容器。

  2. Docker Hub - 是 Docker 的公共镜像库,提供了大量的容器镜像供用户使用,并且可以上传和分享自己的镜像。

  3. Docker Compose- 是 Docker 的编排工具,可以通过编写一个 YAML 文件来定义多个容器的部署方式和关联关系,并通过一条命令将它们一起启动。

Docker 有许多优点,包括:

  1. 提高了应用程序的可移植性,可以在任意支持 Docker 的平台上运行。

  2. 简化了应用程序的部署和维护,可以通过 Docker 部署应用程序,并且可以进行自动化部署和升级。

  3. 提供了隔离和安全性保障,每个容器之间相互隔离,可以防止应用程序之间互相干扰。

  4. 提高了应用程序的可伸缩性,可以根据需要快速增加或减少容器的数量。

  5. 降低了成本,可以在同一主机上运行多个容器,节省了硬件资源和费用。

总之,Docker 是一种非常有用的技术,可以帮助开发者更快速、更简单地部署和运行应用程序,提高了应用程序的可移植性和可伸缩性,同时也降低了管理和维护的成本。

二、Docker和虚拟机的差异

  1. docker是一个系统进程;虚拟机是在操作系统中的操作系统
  2. docker体积小、启动速度快、性能好;虚拟机体积大、启动速度慢、性能一般

三、镜像和容器

镜像〈(Image) : Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。

容器(Container)∶镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。

四、Docker Hub

DockerHub: DockerHub是一个Docker镜像的托管平台。这样的平台称为Docker Registry

国内也有类似于DockerHub 的公开服务,比如网易云镜像服务阿里云镜像库等

五、Docker架构

Docker是一个CS架构的程序,由两部分组成:

服务端(server): Docker守护进程,负责处理Docker指令,管理镜像、容器等

客户端(client):通过命令或RestAPI向Docker服务端发送指令。可以在本地或远程向服务端发送指令。

六、总结

相关推荐
南猿北者36 分钟前
docker容器
docker·容器
二十雨辰1 小时前
[linux]docker基础
linux·运维·docker
time never ceases2 小时前
使用docker方式进行Oracle数据库的物理迁移(helowin/oracle_11g)
数据库·docker·oracle
YCyjs2 小时前
K8S群集调度二
云原生·容器·kubernetes
Hoxy.R2 小时前
K8s小白入门
云原生·容器·kubernetes
MonkeyKing_sunyuhua3 小时前
ubuntu22.04 docker-compose安装postgresql数据库
数据库·docker·postgresql
追风林4 小时前
mac m1 docker本地部署canal 监听mysql的binglog日志
java·docker·mac
€☞扫地僧☜€5 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器
茶馆大橘5 小时前
微服务系列六:分布式事务与seata
分布式·docker·微服务·nacos·seata·springcloud
全能全知者6 小时前
docker快速安装与配置mongoDB
mongodb·docker·容器