Kf 支持各种 Buildpack。本文档介绍了一些使用 Buildpack 的入门示例。
准备工作
- 应在集群上运行 Kf。
- 您应该运行
kf target -s <space-name>
来定位到您的空间。
Java (v2) buildpack
使用 spring initializr 创建一个使用 Spring 网页依赖项和 JAR 打包的 Java 8 maven 项目。下载并解压缩,然后生成 JAR。
./mvnw package
使用 Java v2 buildpack 将 JAR 推送到 Kf。
kf push java-v2 --path target/helloworld-0.0.1-SNAPSHOT.jar
Java (v3) buildpack
使用 spring initializr 创建一个使用 Spring 网页依赖项和 JAR 打包的 Java 8 maven 项目。下载并解压缩,然后使用云原生 Buildpack 推送到 Kf。
kf push java-v3 --stack org.cloudfoundry.stacks.cflinuxfs3
Python (v2) buildpack
按照以下结构创建一个包含文件的新目录。
tree
.
├── Procfile
├── requirements.txt
└── server.py
cat Procfile
web: python server.py
cat requirements.txt
Flask
cat server.py from flask import Flask import os
app = Flask(__name__)
@app.route('/') def hello_world(): return 'Hello, World!'
if __name__ == "__main__": port = int(os.getenv("PORT", 8080)) app.run(host='0.0.0.0', port=port)
使用 v2 buildpack 推送 Python flask 应用。
kf push python --buildpack python\_buildpack
Python (v3) buildpack
(同上)
使用云原生 Buildpack 推送 Python flask 应用。
kf push pythonv3 --stack org.cloudfoundry.stacks.cflinuxfs3
Staticfile (v2) buildpack
创建一个包含源代码的新目录。
添加一个包含此内容的 index.html
文件。
<!DOCTYPE html>
<html lang="en">
<head><title>Hello, world!</title></head>
<body><h1>Hello, world!</h1></body>
</html>
使用静态 Buildpack 推送静态内容。
kf push staticsite --buildpack staticfile\_buildpack
后续步骤
- 自定义堆栈和 buildpack(译注:原英文中的 buildbacks 可能是 buildpacks 的笔误)