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

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

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

易于编译并搭建

相关推荐
一条懒鱼6661 分钟前
K8S-Deployment资源对象
docker·容器·kubernetes
Tao____2 分钟前
国产开源物联网平台
java·物联网·mqtt·iot·设备对接
uup2 分钟前
RabbitMQ 在 Java 应用中消费者无法连接问题
java·rabbitmq
做cv的小昊7 分钟前
在NanoPC-T6开发板上通过USB串口通信实现光源控制功能
java·后端·嵌入式硬件·边缘计算·安卓·信息与通信·开发
敲代码的嘎仔12 分钟前
LeetCode面试HOT100——160. 相交链表
java·学习·算法·leetcode·链表·面试·职场和发展
敲代码的嘎仔14 分钟前
LeetCode面试HOT100—— 206. 反转链表
java·数据结构·学习·算法·leetcode·链表·面试
雨中飘荡的记忆15 分钟前
设计模式之适配器模式详解
java·设计模式·适配器模式
客梦18 分钟前
数据结构-图结构
java·数据结构·笔记
世界尽头与你18 分钟前
CVE-2020-1938_ Apache Tomcat AJP 文件读取与包含漏洞
java·网络安全·渗透测试·tomcat·apache
n***44318 分钟前
Java进阶:IO大全
java·开发语言·python