认识Docker

1.Docker基础

Docker 提供了在松散隔离的环境中打包和运行应用程序的功能,该环境称为容器。隔离和安全性使您可以在给定主机上同时运行多个容器。容器是轻量级的,包含运行应用程序所需的一切,因此您无需依赖主机上安装的内容。您可以在工作时共享容器,并确保与您共享的每个人都能获得以相同方式工作的相同容器。

Docker 提供工具和平台来管理容器的生命周期:

使用容器开发您的应用程序及其支持组件。

容器成为分发和测试应用程序的单元。

准备就绪后,将应用程序作为容器或编排服务部署到生产环境中。无论您的生产环境是本地数据中心、云提供商还是两者的混合,其工作方式都相同。
容器化技术:

技术架构图:

优势:

1.镜像创建方便。2.安装快速3.隔离性强4.启动快5可移植性强6.共享方便

7.镜像小-MB

2.docker的架构与隔离机制

docker架构图:

Docker 使用客户端-服务器架构。Docker 客户端与 Docker 守护程序通信,后者负责构建、运行和分发 Docker 容器的繁重工作。Docker 客户端和守护程序可以在同一系统上运行,或者您可以将 Docker 客户端连接到远程 Docker 守护程序。Docker 客户端和守护程序使用 REST API、通过 UNIX 套接字或网络接口进行通信。另一个 Docker 客户端是 Docker Compose,它允许您使用由一组容器组成的应用程序

Docker的隔离机制:

Docker 是用Go 编程语言编写的 ,它利用 Linux 内核的几个特性来实现其功能。Docker 使用一种称为的技术namespaces来提供称为容器的隔离工作区。当您运行容器时,Docker 会为该容器创建一组命名空间。

这些命名空间提供了一层隔离。容器的每个方面都在单独的命名空间中运行,并且其访问仅限于该命名空间

特定名词:

资源控制:Cgroup是对一组进程进行统一的资源监控。

docker的应用场景:

web应用支持自动化打包和发布

支持自动化测试和持续集成与发布

易于部署和调整各类应用参数

易于编译并搭建

相关推荐
m0_748236831 小时前
Spring Boot日志:从Logger到@Slf4j的探秘
java·spring boot·spring
码字哥3 小时前
EasyExcel设置表头上面的那种大标题(前端传递来的大标题)
java·服务器·前端
懒阳羊3 小时前
Docker(一)
docker·云原生·eureka
漫天转悠4 小时前
Docker保存镜像和导入镜像文件(图文详解)
ubuntu·docker
fen_fen5 小时前
Docker如何运行一个python脚本Hello World
运维·docker·容器
檀越剑指大厂5 小时前
【Docker系列】Docker 构建多平台镜像:arm64 架构的实践
docker·容器·架构
customer086 小时前
【开源免费】基于SpringBoot+Vue.JS加油站管理系统(JAVA毕业设计)
java·vue.js·spring boot·后端·spring cloud·java-ee·maven
Hello.Reader6 小时前
Spring Retry 与 Redis WATCH 结合实现高并发环境下的乐观锁
java·redis·spring
西岭千秋雪_6 小时前
设计模式の单例&工厂&原型模式
java·单例模式·设计模式·简单工厂模式·工厂方法模式·抽象工厂模式·原型模式
fanchael_kui6 小时前
使用elasticsearch-java客户端API生成DSL语句
java·大数据·elasticsearch