名称:Porter
类型:打包器
说明:将应用程序工件、客户端工具、配置和部署逻辑打包为可以分发的版本捆绑包,然后使用单个命令进行安装。Porter实现了CNAB(Cloud Native Application Bundle)规范,并具有声明式创作体验。你的包是由部署所需的任何工具或服务的mixin组成的:bash、云提供商的CLI、Terraform、Docker Compose、Helm等。Porter不会取代这些工具中的任何一个,作者也不必重写现有的脚本来捆绑使用它们。最终用户体验是我们的最高优先级之一,它推动了我们的技术实现和待办事项优先级排序。
网站/代码:
https://porter.sh
https://github.com/deislabs/porter
https://porter.sh/roadmap
https://porter.sh/src/CODE_OF_CONDUCT.md
文档:
https://porter.sh/docs/
如何与云原生计算生态系统保持一致:
关于应用程序部署的问题,CNCF SIG App Delivery和他们的Air Gapped工作组正在积极调查。CNAB规范为许多此类问题提供了解决方案,如包管理、分发、可重复安装等。Porter是一个基于CNAB规范的独立于供应商、以社区为中心的项目,它改进了我们部署和管理云原生应用的方式。Porter今天为一些CNCF项目提供mixin,如helm、kubectl和kustomize,以及其他有用的云技术,如docker-compose、terraform和主要的云提供商。任何人都可以创建一个mixin来编写捆绑包,或者创建一个插件来集成Porter和云提供商,并像分发原始mixin一样分发它。事实上,Porter的大多数贡献者都是来自Porter社区的最端用户。
类似的CNCF或其他的项目:
Docker App实现了CNAB规范。它对部署Dockerized应用程序进行了优化,而Porter并不局限于特定的技术或栈。Duffle是CNAB 1.0规范的参考实现。Porter实际上构建在相同的底层库cnab-go上,它包含了CNAB的实现,提供编写和管理包的一流用户体验。
贡献交流:
https://porter.sh/contribute/