HTCL-02007 Unable to execute HTTP request [ start-instance-error ]

Hi Team,
FYI: I visited the similar queries already in the forum and still i could not get a proper solution there.

I have a simple Node.js server running on my localhost with the following code:

const express = require(‘express’);
const app = express();
const port = 3000;

// Define a route for the root URL
app.get(‘/’, (req, res) => {
res.send(‘Hello World!’);
});

// Start the server
app.listen(port, ‘0.0.0.0’, () => {
console.log(Server running at http://0.0.0.0:${port}/);
});
I can successfully access and get a response through Postman with a GET request to http://localhost:3000/. However, when I try to start the process definition in Camunda after deployment, I receive the error: [HTCL-02007 Unable to execute HTTP request [start-instance-error]].

Please find the sample BPMN file [
Web_Hook_Sample.bpmn (3.9 KB)
] I used. Could you please help me resolve this issue?

Regards,
Paul

Hi Team, I resolved the above issue and Running Camunda in a Docker container can introduce additional considerations for networking and service accessibility. Here are steps to troubleshoot and resolve the connection issue when using Docker:

1. Verify Service Availability

Ensure the service you are trying to reach is running and accessible from within the Docker container. If the service is running on your host machine, Docker might not have direct access to localhost.

2. Use Docker Networking

Docker provides a few ways to connect services running in different containers or on the host machine.

Accessing Host Services

If the service is running on your host machine, you can use the special DNS name host.docker.internal to refer to the host’s IP address from within the Docker container.

Update your BPMN configuration to use host.docker.internal:

Updated service task as below

<bpmn2:serviceTask id=“ServiceTask_1” name=“HTTP Request” camunda:asyncBefore=“true”>
bpmn2:extensionElements
camunda:connector
camunda:connectorIdhttp-connector</camunda:connectorId>
camunda:inputOutput
<camunda:inputParameter name=“url”>http://host.docker.internal:1234/your-endpoint</camunda:inputParameter>
<camunda:inputParameter name=“method”>POST</camunda:inputParameter>
<camunda:inputParameter name=“headers”>
camunda:map
<camunda:entry key=“Content-Type”>application/json</camunda:entry>
</camunda:map>
</camunda:inputParameter>
<camunda:inputParameter name=“payload”>{“key”: “value”}</camunda:inputParameter>
</camunda:inputOutput>
</camunda:connector>
</bpmn2:extensionElements>
</bpmn2:serviceTask>

Thanks,
Paul