繁体   English   中英

KIE-Server容器卡在CREATING状态

[英]KIE-Server Container Stuck at CREATING Status

我正在运行kie-server-showcase泊坞窗映像,并尝试在其上运行一个非常简单的规则。

我这样启动容器:

docker run -i -p 8080:8080 --name kie-server --mount type=bind,source=$HOME/.m2,target=/opt/jboss/.m2 jboss/kie-server-showcase:latest

我需要使用绑定安装,因为我只是使用本地.m2 maven存储库(目前),这是我看到的获取容器以获取其副本的唯一方法。

我通过“ maven clean”和“ maven install”在Eclipse中构建了一个kjar。 在kjar(.jar)内部,我有:

  • META-INF包含kmodule.xml和MANIFEST.MF,它也是一个maven子文件夹,该子文件夹的子文件夹中带有组ID后跟工件ID,即META-INF> maven> group>工件。 工件文件夹包含pom和pom.properties(它们随后定义了GAV)。
  • 我的drl和bpmn

要在kie服务器上创建容器,请使用curl命令:

curl -u 'admin:admin' -H "accept: application/xml" -H "content-type: application/xml" -d @myContainer.xml -X PUT http://localhost:8080/kie-server/services/rest/server/containers/MyContainer

然后,它开始运行该命令,但是所花费的时间继续增加,直到我离开该命令30分钟后,它仍然在运行。

我检查了kie-server容器,然后添加了一个,但状态为CREATING:

<response type="SUCCESS" msg="List of created containers">
    <kie-containers>
        <kie-container container-id="MyContainer" status="CREATING">
            <release-id>
                <artifact-id>hummingbird.rules.syndicated-kjar</artifact-id>
                <group-id>uk.co.cdl.hummingbird</group-id>
                <version>0.0.1-SNAPSHOT</version>
            </release-id>
            <scanner status="DISPOSED"/>
        </kie-container>
    </kie-containers>
</response>

我对docker或使用kie-server的经验不是很丰富,并且过去没有使用过kjars,但是有一个自定义规则引擎,该引擎已分别加载了drl和bpmn。

我认为这可能是由于我的观点不正确造成的。 docker容器似乎在本地Maven存储库挂载中看到了kjar(因为我以前遇到无法找到它的错误)。

kjar中的drl非常简单:

package somerules

import org.json.JSONObject
import java.util.Map

rule "somerules - do something" ruleflow-group "somerules"
dialect "java"
when
        $root : Map()
then
        insert(new JSONObject());
        delete($root);
end

bpmn不应成为问题(它与我们自定义规则引擎以前使用的相同):

<?xml version="1.0" encoding="UTF-8"?> 
<definitions id="Definition"
             targetNamespace="http://www.jboss.org/drools"
             typeLanguage="http://www.java.com/javaTypes"
             expressionLanguage="http://www.mvel.org/2.0"
             xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://www.omg.org/spec/BPMN/20100524/MODEL BPMN20.xsd"
             xmlns:g="http://www.jboss.org/drools/flow/gpd"
             xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI"
             xmlns:dc="http://www.omg.org/spec/DD/20100524/DC"
             xmlns:di="http://www.omg.org/spec/DD/20100524/DI"
             xmlns:tns="http://www.jboss.org/drools">

  <process processType="Private" isExecutable="true" id="somerules" name="somerules" tns:packageName="somerules" >

    <!-- nodes -->
    <startEvent id="_1"  isInterrupting="true"/>
    <endEvent id="_jbpm-unique-0" name="End" >
        <terminateEventDefinition />
    </endEvent>
    <businessRuleTask id="_jbpm-unique-2" name="somerules" g:ruleFlowGroup="somerules" >
      <ioSpecification>
        <inputSet>
        </inputSet>
        <outputSet>
        </outputSet>
      </ioSpecification>
    </businessRuleTask>

    <!-- connections -->
    <sequenceFlow id="_jbpm-unique-2-_jbpm-unique-0" sourceRef="_jbpm-unique-2" targetRef="_jbpm-unique-0" />
    <sequenceFlow id="_1-_jbpm-unique-2" sourceRef="_1" targetRef="_jbpm-unique-2" />

  </process>

  <bpmndi:BPMNDiagram>
    ...
  </bpmndi:BPMNDiagram>

</definitions>

我正在用流口水7.23.0.Final构建kjar。 我以前也尝试过7.22。

任何建议表示赞赏,谢谢。

我主要通过遵循给出的建议并尝试在没有Docker的情况下运行kie-server来找出问题所在。

我收到了很多关于依赖项和错误的错误消息(在Docker中我看不到),这些错误消息类似于“类X和类Y在Z属性上存在分歧”。

这是因为我的kjar pom具有在kie服务器中已经提供的依赖项,并且似乎存在冲突。 都是流口水的依赖。 通过在kjar pom中将这些依赖关系的作用域设置为“已提供”,问题得以解决,我可以创建容器(在Docker和非Docker kie-servers中)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM