据开源社区最新数据,企业级AI智能体平台MaxKB在GitHub上获得了广泛关注,其星标数量已达数干次,下载量累计超过数万次。该平台专注于通过检索增强生成技术构建企业知识库系统,为智能客服、内部知识管理等应用场景提供了开源解决方案。

MaxKB全称为Max Knowledge Brain,是一款基于RAG技术的企业级AI平台,于2024年正式发布。与传统知识管理系统不同,该平台将文档存储、AI问答和工作流自动化功能整合为一体化解决方案,旨在帮助企业解决数据分散和响应效率低下等可题。

部署便利性是MaxKB的重要优势之一。通过Docker容器化技术,用户可以通过简单的命令快速启动服务。整个部署过程不需要专业的运维知识,适合技术资源有限的初创企业使用。

-以上信息来源于AI咨询


Docker是什么呢?为什么要使用Docker呢?

Docker是DotCloud公司的创始人Solomon Hykes发起的一个开源项目,最初是为了高效地解决应用程序的部署和环境一致性问题。

后基于开源项目的技术成果(如核心的容器引擎、镜像构建与管理逻辑等),由Docker公司(原DotCloud公司)主导,并在众多开源社区贡献者以及其他科技公司的共同参与下,进一步整合了镜像仓库、交互工具、API等组件,形成了一套完整的应用生命周期管理平台,也就是Docker平台。

 

可以从一个简单的角度去理解Docker平台的功能,Docker单词释义为码头工人、容器,码头工人的工作就是将货物装载到集装箱里,Docker就像是码头工人,也是将货物打包装载到集装箱里,只不过货物变成了"应用程序及其运行所需的依赖(如库文件、配置、运行时环境等)”,要装载的集装箱变成了"标准化的容器”。

和码头工人打包好的集装箱一样,打包好的容器就是Docker最终产出的成果。在日常使用过程中,人们更关注产品与成果,因此在沟通交流时会简化描述,我们经常听到的"一个Docker"的含义就是"一个已经打包好应用和运行环境的Docker容器"


Docker平台组成部分有哪些?

经查询,Docker主要有四个内部组成部分,分别是Docker Engine[核心引擎由Docker Client(客户端)和Docker Daemon(服务器)共同组成]、Docker Image(镜像)、Docker Registry(注册中心)和Docker Contanier(容器)。

 

下面举一个简单的例子将上述的部分串联起来:

小A向Docker Client输入docker run指令、说明需要启动容器后,该指令会传达到Daemon,Daemon会先在本地lmage查询是否存在,若存在,则依据此Image创建运行Container,若不存在,则连接到Registry,拉取镜像到本地,拉取完成后依据Image创建并运行Container。

 

下面给出Docker组件一些详细信息:

Docker Client(Docker客户端):

用户与Client交互输入指令,会传递给Docker Daemon,下面列举出几个常见指令:

-docker run    启动容器

-docker build 构建镜像

-docker pull   拉取镜像

-docker ps      查看当前正在运行的容器

需注意,Docker Client与Docker Daemon在物理上无直接联系,Client可以运行在和Daemon相同的机器上,也可以运行在远程机器上。

 

Docker Daemon(Docker守护进程,也叫服务器,通常也被称为Dockerd):

该部分是Docker的核心处理单元,位于Docker Host内部,接收来自Docker Client的指令,并向下管理Docker Container。

它的主要功能包括:

-监听请求:接收并处理来自Docker客户端的API请求(例如创建、运行、停止、删除容器,构建镜像等)。

-镜像管理:负责从Docker Registry(例如Docker Hub)拉取镜像、构建镜像以及将镜像推送到Registry。

-容器管理:根据镜像创建、启动、停止、删除和监控容器。它管理容器的生命周期,并为容器分配资源(如网络、存储)。

-网络和存储管理:为容器配置网络接口和挂载存储卷。

 

Docker Container(Docker容器):

是Docker最终运行的载体,Docker技术“轻量级”、“便携性”和“隔离性”,都体现在的Docker Container的特性中,Container由Daemon创建和管理,是应用程序及其所有依赖(包括代码、运行时、系统工具、系统库等)的独立、可执行的软件包。

每个Container都运行在一个隔离的环境中,共享宿主机的操作系统内核,但不包含完整的Guest OS。

与虚拟机相比,Container因为不包含完整的Guest OS,所以启动更快、资源占用更少。

 

Docker Image (Docker镜像):

Docker Image包含了运行特定应用程序所需的所有文件系统、代码、运行时环境、库文件和依赖项。Image可以理解为用来构建Container的静态、只读模板,而Container是Image的运行实例。

关键特性与构成:

只读性质(Read-Only Template):

镜像是不可更改的。如果需要对镜像进行修改,必须创建一个新的镜像。

分层结构(Layered Architecture):

基础镜像(Base Image):所有的Docker镜像都建立在一个基础镜像之上。

分层构建:镜像的每一层都代表了对前一层文件系统的一个修改。

复用性:不同的镜像可以共享相同的底层层节省存储空间。

效率:当更新镜像时,只有发生变化的层需要被传输和重建,而不是整个镜像。

 

Docker Registry(Docker注册中心):

Registry是集中存储和管理Docker镜像的服务平台,支持lmage的推送和拉取。

Registries主要分为两类:

公共Registry(Public Registry):

最典型的例子是Docker Hub。这是一个对所有用户开放的平台,任何人都可以从中拉取大量预构建的、公开可用的镜像,也可以将自己创建的镜像(或不从头开始创建的镜像)推送到此进行分享。

私有Registry(Private Registry):

与公共Registry相对,私有Registry通常用于企业内部,用于存储和管理私有或敏感的Docker镜像。这些镜像可能包含专有代码或配置,不适合公开。私有Registry提供了更严格的访问控制和安全性,确保只有授权用户才能访问。

 

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐