这是我对cloudfoundry buildpacks和droplets的理解
buildpack是运行时(比如 jdk)+ 容器(比如 tomcat)+ 框架(比如 spring)+ 服务配置(如果有的话)+ 你的应用程序(如果有的话)。
droplet是部署在 linux 容器上的 buildpack。
请更正或添加其他信息。
这是我对cloudfoundry buildpacks和droplets的理解
buildpack是运行时(比如 jdk)+ 容器(比如 tomcat)+ 框架(比如 spring)+ 服务配置(如果有的话)+ 你的应用程序(如果有的话)。
droplet是部署在 linux 容器上的 buildpack。
请更正或添加其他信息。
buildpack是三个二进制文件的集合:detect、compile和release。当您的应用程序位被推送到 Cloud Foundry 时,所有可用构建包中的检测都会针对您的位运行,直到返回true
。例如,Ruby buildpack 检查是否存在 a Gemfile
,Python buildpack 查找 arequirements.txt
等。接下来,编译阶段将您的应用程序位转换为单个可运行的包,这意味着编译代码(如有必要)并捆绑在任何需要额外的东西,比如JDK、tomcat、spring等;或 Ruby 解释器、gem 等。单个可执行文件是droplet。最后,发布阶段呈现 droplet 和相关的元数据,以便 stager 可以将它们上传到云控制器。
要运行您的应用程序,从云控制器检索液滴并在容器内运行。
基本上,一个 buildpack 将您的应用程序打包成一个 droplet,它由您的应用程序 + 一些其他内容或应用程序的编译二进制版本组成,然后该 droplet 在容器中运行。
Buildpacks是为您的应用程序提供运行时支持的脚本。构建包是一个脚本,其中包含检测、提供、完成和发布的指令。它们本质上提供了您的应用程序运行时 + 应用程序框架 + 相关依赖项。
Droplet是 tarball 文件,其中包含您的 APP+运行时间+框架+依赖项。该软件包已暂存并最终部署。