- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试在 OpenShift 服务器中部署 java 应用程序。我的应用程序分为四个项目:BBDD、Business、Web Services 和 Web。当我使用 openshift 创建应用程序时,它创建了以下结构:src(这个有 java、resources 和 webapp 文件夹)、webapps 和 pom.xml。我不知道如何将我的项目组织到该结构中以上传到服务器。我已将 Web 结构放在 src 内的 webapp 文件夹中。然后,我将其他项目放在 java 文件夹中。当我执行应用程序时,我可以看到我的网页,并且可以导航所有网页,但是当我调用 Web 服务时,出现以下错误:
未找到 Http/1.1 404
提前致谢,
伊类族
最佳答案
Openshift 希望使用 pom.xml 在其服务器上编译应用程序,然后运行它构建的应用程序。为此,您的项目需要是 maven webapplication project 。只有当您在本地测试过它时,您才会期望将代码提交到 openshift 服务器(使用 git
)才能成功编译并运行应用程序。
这意味着您不应使用 SCP 上传工具上传文件;您应该使用 git
将源代码提交到 openshift 服务器,以便编译然后运行您的应用程序。
我通常使用 maven 和 openshift 的方式是将 xml 片段添加到 pom.xml 中以启用 jetty-maven-plugin能够使用 mvn jetty:run 构建并启动项目以在本地进行测试。当且仅当它在本地工作时我才尝试部署它。该命令是“零安装”,因为 maven 下载 jetty jar 并在您的项目上运行它们。
Redhat openshift 倾向于将 redhat jboss AS 应用服务器推广为 Java 解决方案,因此,如果您沿着这条路线走下去,您应该尝试使用 mvn package
来制作 war 文件,并在本地 jboss 安装之前对其进行测试期待它能在服务器上运行。有一种方法可以在本地构建一个 EAR 文件并将其推送到服务器,而不是提交代码供服务器构建和运行。
在这个答案的底部,我有一个指向我编写的演示的链接,它展示了我首选的方法。我将应用程序创建为 DIY cartridge这是一个空 shell,然后自定义 .openshift
文件夹中的脚本来启动我选择的 Java 服务器。我使用 maven 构建我的 web 应用程序,我使用 jetty-maven-plugin 运行该应用程序以在 Eclipse 中进行本地调试(maven IDE 插件允许我“调试为... > maven > “jetty:run”)。然后我配置 pom。我使用 web.xml 来构建我的整个应用程序以及 jetty Java Web 服务器到一个巨大的可运行 jar 中。然后我编辑启动脚本以使用“java -jar”来运行我的完整应用程序。
如果您使用的是 DYI 墨盒,则不需要使用 maven;我使用 sbt 作为构建工具来创建可运行的 jar。您只需修改 .openshift
文件夹中的脚本即可下载并运行您选择的工具。
我在下面的链接中制作的 GitHub 演示包含有关如何在 openshift 上部署它的说明。因此,您可能希望在本地调试它并将其推送到您的 openshift 服务器之后运行它,然后撕掉我的代码并添加您的所有代码:
关于java - 在 Openshift 服务器中使用 Rest Web 服务部署 Java 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28662347/
我是 devops 的新手,并且正在阅读有关此的 openshift 文档。似乎 buildconfig 和 pipeline(openshift 4.6 中的 tekton)都可以实现 source
我正在寻找 OpenShift Origin 和 OpenShift Enterprise 之间的主要区别。我知道第一个是开源的,后者是商业版。与开源版本相比,OpenShift Enterprise
在 Openshift 上部署应用程序后,收集应用程序的 1) CPU、2) 网络、3) 内存、4) 磁盘存储使用情况的推荐方法/最佳实践是什么?基本上是为了监控应用程序。 如果它们能够以时间序列格式
几天来,我一直在尝试通过 Openshift 连接到我的应用程序,但仍然没有运气。 我现在不确定该去哪个论坛,因为我在任何地方都没有得到帮助。 1) 我通过终端运行sudo rhc setup (我之
Spinnaker 是否可以作为云提供商在 Red Hat 的 Openshift 上运行和部署应用程序? 如果没有,需要什么才能使之成为现实? 谢谢。 最佳答案 首先,您需要为 Openshift
我目前正在使用 Red Had 提供的免费培训来学习 Openshift 作为开发人员和管理员。你知道我可以用来获得“刺激”经验的任何其他地方吗?提前致谢。 :) 最佳答案 红帽提供的免费培训是一个良
我在 openshift 中创建应用程序时不小心选择了大齿轮。有没有办法在不重新创建我的应用程序的情况下降级齿轮类型?比如从大到中,甚至从大到小。highcpu。 提前谢谢各位 最佳答案 您确实必须重
我创建了一个 Web 应用程序,我想在 Openshift 上进行部署。 最简单的方法是什么?我正在使用 Openshift Eclipse 客户端。 我应该创建一个新的 openshift,然后从我
我想在 Openshift 中定义一条具有多条路径的路由,每条路径转发到不同的服务。例如/pathA 会将请求转发到 ServiceA ,而/pathB 会将请求转发到 ServiceB。 这在 Op
我想创建一个构建器图像 app_name:latest这将采用多个源输入,例如,另一个图像和二进制源,然后将输出创建到 app_name:latest . 示例 - { "kind": "Bu
我有一个 openshift 应用程序,我在本地彻底重新设计了该应用程序,并希望在 openshift 服务器上重新开始。 我可以删除所有齿轮并重做它们,但是有没有一种优雅的方法或任何方法可以将 op
大约一周以来,它说: Queued for provisioning Due to an increase in OpenShift Online Starter popularity, please
我希望我的部署配置使用作为构建配置输出的镜像。 我目前正在使用这样的东西: - apiVersion: v1 kind: DeploymentConfig metadata: anno
与 OpenShift Container Platform(以前的 Enterprise)相比,OpenShift Origin 是否有任何强制限制?我的意思是,像 Origin 这样的东西,你最多
一个 openshift 应用程序可以有多个域吗? Heroku 允许这样做。完全不同的域(app.abc.com、app.xyz.com)或子域(*.abc.com、*.xyz.com)。 open
我想开发一种新的墨盒供我自己使用。我使用 OpenShift Cartridge Development Kit 开始我的工作。我的构建脚本写在.openshift/action_hooks/buil
我正在使用 flask 。我安装了 Flask-migrate 并一直在使用它来迁移我的 postgresql 数据库。它在我的本地盒子上工作正常。但是,当我在 openshift 上运行它时出现错误
当我尝试在打开的类次项目中推送一些更改时,我在尝试构建项目时遇到了这个错误: remote: Found pom.xml... attempting to build with 'mvn --glob
在不可扩展的奇异齿轮中,齿轮空闲多长时间没有流量。我看过 https://access.redhat.com/site/documentation/en-US/OpenShift_Online/2.0
我试图在 OpenShift 中更新图像时触发部署。该图像托管在私有(private)外部 docker 注册表中。我创建了一个 ImageStream映射到这个外部图像。当我将新图像推送到注册表时,
我是一名优秀的程序员,十分优秀!