How to enable Job Executor in Camunda Docker Container

I’m using the default camunda-docker-container. Unfortunately the job executors don’t work and service tasks aren’t get picked up.

Now I see, that the executors must be enabled manually. But how can I do this in my docker container?
Job Executor Camunda Dock, Forum entry

Currently I’ve no idea.

Hi @Zott
Job Executor Activation is configured with the following [property].(The Job Executor | docs.camunda.org)

<property name="jobExecutorActivate" value="true" />

According to the documentation changes to the configuration can be made with docker volumes linked to the container.

Hope it gives you some ideas.

Unfortunately it doesn’t work.

I adjusted the xml-file as follows:

<?xml version="1.0" encoding="UTF-8"?>
<bpm-platform xmlns="http://www.camunda.org/schema/1.0/BpmPlatform" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.camunda.org/schema/1.0/BpmPlatform http://www.camunda.org/schema/1.0/BpmPlatform ">

  <job-executor>
    <job-acquisition name="default" />
  </job-executor>

  <process-engine name="default">
    <job-acquisition>default</job-acquisition>
    <configuration>org.camunda.bpm.engine.impl.cfg.StandaloneProcessEngineConfiguration</configuration>
    <datasource>java:jdbc/ProcessEngine</datasource>

    <properties>
      <property name="history">full</property>
      <property name="databaseSchemaUpdate">true</property>
      <property name="authorizationEnabled">true</property>
      <property name="jobExecutorDeploymentAware">true</property>
      <property name="historyCleanupBatchWindowStartTime">00:01</property>
      <property name="jobExecutorActivate" value="true" />
    </properties>

    <plugins>
      <!-- plugin enabling Process Application event listener support -->
      <plugin>
        <class>org.camunda.bpm.application.impl.event.ProcessApplicationEventListenerPlugin</class>
      </plugin>

      <!-- plugin enabling integration of camunda Spin -->
      <plugin>
        <class>org.camunda.spin.plugin.impl.SpinProcessEnginePlugin</class>
      </plugin>

      <!-- plugin enabling connect support -->
      <plugin>
        <class>org.camunda.connect.plugin.impl.ConnectProcessEnginePlugin</class>
      </plugin>

    <!-- LDAP CONFIGURATION -->
    <!-- Uncomment this section in order to enable LDAP support for this process engine -->
    <!-- Adjust configuration, see ( http://docs.camunda.org/latest/guides/user-guide/#process-engine-identity-service-the-ldap-identity-service ) -->
    <!--
      <plugin>
        <class>org.camunda.bpm.identity.impl.ldap.plugin.LdapIdentityProviderPlugin</class>
        <properties>

          <property name="serverUrl">ldaps://localhost:4334/</property>
          <property name="acceptUntrustedCertificates">false</property>
          <property name="managerDn">uid=jonny,ou=office-berlin,o=camunda,c=org</property>
          <property name="managerPassword">s3cr3t</property>

          <property name="baseDn">o=camunda,c=org</property>

          <property name="userSearchBase"></property>
          <property name="userSearchFilter">(objectclass=person)</property>

          <property name="userIdAttribute">uid</property>
          <property name="userFirstnameAttribute">cn</property>
          <property name="userLastnameAttribute">sn</property>
          <property name="userEmailAttribute">mail</property>
          <property name="userPasswordAttribute">userpassword</property>

          <property name="groupSearchBase"></property>
          <property name="groupSearchFilter">(objectclass=groupOfNames)</property>
          <property name="groupIdAttribute">cn</property>
          <property name="groupNameAttribute">cn</property>

          <property name="groupMemberAttribute">member</property>
          <property name="sortControlSupported">false</property>

        </properties>
      </plugin>
      -->
      <!-- LDAP CONFIGURATION -->
      <!-- The following plugin allows you to grant administrator authorizations to an existing LDAP user -->
      <!--
      <plugin>
        <class>org.camunda.bpm.engine.impl.plugin.AdministratorAuthorizationPlugin</class>
        <properties>
          <property name="administratorUserName">admin</property>
        </properties>
      </plugin>
      -->
    </plugins>
  </process-engine>
</bpm-platform>

Then I changed the composer file:

volumes:
    - $PWD/bpm-platform.xml:/camunda/conf/bpm-platform.xml

now restarting the container it seems to fail and it restarts again and again.

Following the error message from docker:

camunda_1  | 26-Oct-2021 07:50:24.579 INFO [main] org.camunda.commons.logging.BaseLogger.logInfo ENGINE-08046 Found Camunda Platform configuration in CATALINA_BASE/CATALINA_HOME conf directory [/camunda/conf/bpm-platform.xml] at 'file:/camunda/conf/bpm-platform.xml'
camunda_1  | 26-Oct-2021 07:50:24.644 SEVERE [main] org.apache.catalina.startup.Catalina.start The required Server component failed to start so Tomcat is unable to start.
camunda_1  |    org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]
camunda_1  |            at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
camunda_1  |            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
camunda_1  |            at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
camunda_1  |            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
camunda_1  |            at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
camunda_1  |            at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
camunda_1  |            at java.base/java.lang.reflect.Method.invoke(Method.java:566)
camunda_1  |            at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
camunda_1  |            at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
camunda_1  |    Caused by: org.camunda.bpm.engine.ProcessEngineException: ENGINE-08043 Exception while performing 'deploy BPM platform' => 'Parsing bpm-platform.xml file': ENGINE-09005 Could not parse BPMN process. Errors:
camunda_1  | * cvc-complex-type.3.2.2: Attribute 'value' is not allowed to appear in element 'property'. | resource file:/camunda/conf/bpm-platform.xml | line 20 | column 59
camunda_1  |            at org.camunda.bpm.container.impl.ContainerIntegrationLogger.exceptionWhilePerformingOperationStep(ContainerIntegrationLogger.java:316)
camunda_1  |            at org.camunda.bpm.container.impl.spi.DeploymentOperation.execute(DeploymentOperation.java:136)
camunda_1  |            at org.camunda.bpm.container.impl.jmx.MBeanServiceContainer.executeDeploymentOperation(MBeanServiceContainer.java:160)
camunda_1  |            at org.camunda.bpm.container.impl.spi.DeploymentOperation$DeploymentOperationBuilder.execute(DeploymentOperation.java:216)
camunda_1  |            at org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.deployBpmPlatform(TomcatBpmPlatformBootstrap.java:83)
camunda_1  |            at org.camunda.bpm.container.impl.tomcat.TomcatBpmPlatformBootstrap.lifecycleEvent(TomcatBpmPlatformBootstrap.java:61)
camunda_1  |            at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
camunda_1  |            at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
camunda_1  |            at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
camunda_1  |            at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:920)
camunda_1  |            at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
camunda_1  |            ... 7 more
camunda_1  |    Caused by: org.camunda.bpm.engine.ParseException: ENGINE-09005 Could not parse BPMN process. Errors:
camunda_1  | * cvc-complex-type.3.2.2: Attribute 'value' is not allowed to appear in element 'property'. | resource file:/camunda/conf/bpm-platform.xml | line 20 | column 59

(I only copied the xml-file from initial and added the “jobexecutor” property)

What if you change it to <property name="jobExecutorActivate">true</property>?

Currently it seems to work. The service starts without any errors.
So the Camunda-Documentation seems to be buggy: Link

// Wrong
<property name="jobExecutorActivate" value="true" />
// Right
<property name="jobExecutorActivate">true</property>