Kf 支援多種 Buildpack。本文件將說明一些初始範例,協助您開始使用這些功能。
事前準備
- 您應該在叢集上執行 Kf。
- 您應該已執行
kf target -s <space-name>
來指定空間。
Java (v2) 建構包
使用 spring initializr 建立 Java 8 Maven 專案,其中包含 Spring Web 依附元件和 JAR 封裝。下載並解壓縮,解壓縮後即可產生 JAR。
./mvnw package
使用 Java v2 建構包將 JAR 推送至 Kf。
kf push java-v2 --path target/helloworld-0.0.1-SNAPSHOT.jar
Java (v3) Buildpack
使用 spring initializr 建立 Java 8 Maven 專案,其中包含 Spring Web 依附元件和 JAR 封裝。下載並解壓縮,解壓縮後,使用雲端原生 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 Buildpacks 推送 Python flask 應用程式。
kf push python --buildpack python\_buildpack
Python (v3) 建構包
(同上)
使用雲端原生 Buildpacks 推送 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