Paketo buildpacks将你的应用程序源代码转化为容器镜像,并轻松保持更新。
什么是构建包?
构建包是一组可执行文件,它检查你的应用程序源代码,并创建一个计划来构建你的应用程序。
Paketo buildpack实现了云原生计算基金会的buildpack规范,为从源代码构建可重复的容器镜像提供工具包和工作流程。
Paketo Liberty buildpack为工作流程提供了Open Liberty运行时间,产生了一个可以在任何地方运行的Open Container Initiative(OCI)镜像。
为什么使用Paketo Liberty构建包?
-
你可以在不创建Docker文件的情况下构建你的应用程序!
-
先进的缓存:Paketo buildpack使用内置的缓存来提高性能,所以你可以快速重建你的应用程序,只更新已经改变的层。
-
材料清单:内置的软件材料清单(SBOM)支持提供对应用程序镜像内容的洞察力。
-
最小的应用图像:图像只包含必要的内容。
-
可复制性:通过重新运行构建,复制相同的应用图像摘要。
-
自动检测:直接从应用源头构建图像。
-
重新发布:通过修补图像的操作系统层,即时更新基本图像,而不需要重建你的源代码。
你需要什么?
让我们开始吧!
下面的例子使用Open Liberty启动程序作为应用源。 下载Open Liberty启动程序:
git clone https://github.com/openliberty/guide-getting-started.git
cd guide-getting-started/start
设置一个默认的构建器:
pack config default-builder gcr.io/paketo-buildpacks/builder:base
构建该应用程序:
pack build myapp --env BP_JAVA_APP_SERVER=liberty
你的应用程序现在已经转化为一个OCI图像了!
现在呢?
有了你的OCI镜像,你可以用docker run 命令在本地运行你的应用程序:
docker run --rm -p 9080:9080 myapp
或通过使用Open Liberty运营商将你的应用程序部署到任何基于Kubernetes的平台,如红帽OpenShift。
从内部的Open Liberty安装中构建你的应用程序
你可以通过使用打包的Liberty服务器从内部Open Liberty安装中构建。运行下面的命令来打包你的服务器:
bin/server package defaultServer --include=usr
然后你可以通过使用--path 参数为构建提供打包的服务器:
pack build --path <packaged-server-zip-path> --env BP_JAVA_APP_SERVER=liberty myapp
或者,你可以通过改变你的工作目录到包含wlp 目录的安装根目录,并运行以下命令,从Liberty服务器安装中构建:
pack build --env BP_JAVA_APP_SERVER=liberty myapp
了解更多: