W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
實(shí)施POF(確保使用functions
軟件包):
package functions; import java.util.function.Function; public class Uppercase implements Function<String, String> { public String apply(String input) { return input.toUpperCase(); } }
將其安裝到本地Maven存儲(chǔ)庫(kù)中:
./mvnw clean install
創(chuàng)建一個(gè)提供其Maven坐標(biāo)的function.properties
文件。例如:
dependencies.function: com.example:pof:0.0.1-SNAPSHOT
將openwhisk運(yùn)行程序JAR復(fù)制到工作目錄(與屬性文件相同的目錄):
cp spring-cloud-function-adapters/spring-cloud-function-adapter-openwhisk/target/spring-cloud-function-adapter-openwhisk-2.0.0.BUILD-SNAPSHOT.jar runner.jar
使用上述屬性文件從運(yùn)行器JAR的--thin.dryrun
生成一個(gè)m2回購(gòu):
java -jar -Dthin.root=m2 runner.jar --thin.name=function --thin.dryrun
使用以下Dockerfile:
FROM openjdk:8-jdk-alpine VOLUME /tmp COPY m2 /m2 ADD runner.jar . ADD function.properties . ENV JAVA_OPTS="" ENTRYPOINT [ "java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "runner.jar", "--thin.root=/m2", "--thin.name=function", "--function.name=uppercase"] EXPOSE 8080
您可以使用Spring Cloud Function應(yīng)用程序,而不是僅使用帶有POF的jar,在這種情況下,您必須更改應(yīng)用程序在容器中的運(yùn)行方式,以便它將主類(lèi)用作源文件。例如,您可以更改上面的
ENTRYPOINT
并添加--spring.main.sources=com.example.SampleApplication
。
構(gòu)建Docker映像:
docker build -t [username/appname] .
推送Docker映像:
docker push [username/appname]
使用OpenWhisk CLI(例如,在vagrant ssh
之后)創(chuàng)建操作:
wsk action create example --docker [username/appname]
調(diào)用動(dòng)作:
wsk action invoke example --result --param payload foo { "result": "FOO" }
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: