认识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应用支持自动化打包和发布

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

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

易于编译并搭建

相关推荐
正经教主3 分钟前
【docker基础】第六课:Web应用与数据库容器部署
网络·docker·容器
戳代码的新星6 分钟前
论小白如何学会使用Maven
java·maven
wyhwust6 分钟前
maven的安装和配置
java
plainGeekDev17 分钟前
HttpURLConnection → OkHttp + Kotlin
android·java·kotlin
swordbob18 分钟前
Spring Boot 2.0 改 CGLIB 后,接口实现是否有影响
java·开发语言·spring
AI人工智能+电脑小能手22 分钟前
【大白话说Java面试题 第106题】【并发篇】第6题:synchronized 锁的锁对象可以是什么?
java·开发语言·面试
小当家.10527 分钟前
AIGrader:一个 AI 作业批改平台的 Java EE 课设实战
java·人工智能·java-ee
devilnumber30 分钟前
Lambda|行为参数化 完整精讲
java·lambda·行为参数化
garmin Chen30 分钟前
Prompt工程入门:让AI按你的要求工作(3)--Prompt工程与提示词安全评测概述
java·人工智能·python·安全·prompt