Oracle应用容器云的自由
在这篇博客文章中,我将介绍如何部署CloudEE封装在杜克大学应用自由尤伯杯罐子Oracle应用集装箱云端 。
在Oracle Application Container Cloud中进行部署所需的部署工件是一个ZIP归档文件,其中包含应用程序über-jar和清单文件(manifest.json)。 下面列出了CloudEE Duke的manifest.json的Liberty版本。
manifest.json
{ "runtime": { "majorVersion": "8" }, "command": "java -jar cloudee-duke.jar", "release": { "version": "1.0", "build": "1", "commit": "123" }, "notes": "Dukes says hello from Liberty" }
您需要指定供Liberty使用的端口。 这可以通过使用环境变量$ {env.PORT}在server.xml中进行配置来完成,如下所示:
<server description="Sample Liberty server"> <featureManager> <feature>microprofile-1.2</feature> </featureManager> <httpEndpoint httpPort="${env.PORT}" httpsPort="9443" id="defaultHttpEndpoint" host="*" /> <quickStartSecurity userName="duke" userPassword="duke"/> <keyStore id="defaultKeyStore" password="Liberty"/> </server>
über-jar是通过结合使用Maven资源插件和Liberty Maven插件来生产的:
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> <version>3.0.2</version> <executions> <execution> <id>copy-app</id> <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration> <outputDirectory>${project.build.directory}/liberty/wlp/usr/servers/defaultServer/dropins</outputDirectory> <resources> <resource> <directory>${project.build.directory}</directory> <includes> <include>${project.build.finalName}.war</include> </includes> </resource> </resources> </configuration> </execution> </executions> </plugin> <plugin> <groupId>net.wasdev.wlp.maven.plugins</groupId> <artifactId>liberty-maven-plugin</artifactId> <version>2.2</version> <extensions>true</extensions> <configuration> <install> <type>webProfile7</type> <version>2018.+</version> </install> <configFile>${basedir}/src/main/liberty/config/server.xml</configFile> <serverEnv>${basedir}/src/main/liberty/config/server.env</serverEnv> <jvmOptionsFile>${basedir}/src/main/liberty/config/jvm.options</jvmOptionsFile> <packageFile>${project.build.directory}/${project.build.finalName}.jar</packageFile> <include>runnable</include> </configuration> <executions> <execution> <id>install-liberty</id> <phase>prepare-package</phase> <goals> <goal>install-server</goal> </goals> </execution> <execution> <id>package-app</id> <phase>package</phase> <goals> <goal>package-server</goal> </goals> </execution> </executions> </plugin>
有关如何使用maven命令生成可部署的ZIP归档的示例,请参见完整的pom.xml :
mvn clean package assembly:single -Pliberty
这将在目标文件夹中生成一个名为cloudee-duke-oracle-liberty.zip的文件。 这是您将部署到Oracle Application Container Cloud的ZIP存档,如下面的屏幕快照所示。
部署应用程序后,您应该可以访问hello端点
https://<dependsonyouraccount>.oraclecloud.com/helloZ
公爵说你好!
您还将拥有MicroProfile实施提供的运行状况和指标终结点
https://<dependsonyouraccount>.oraclecloud.com/health
{
结果:“ UP”,
检查:[]}
https://<dependsonyouraccount>.oraclecloud.com/metrics
#TYPE base:classloader_total_loaded_class_count计数器
#HELP base:classloader_total_loaded_class_count显示自Java虚拟机开始执行以来已加载的类的总数。
基数:classloader_total_loaded_class_count 9430
#TYPE base:cpu_system_load_average量规
…
翻译自: https://www.javacodegeeks.com/2018/03/liberty-on-oracle-application-container-cloud.html