Unable to start Z ChatOps container

Use this information to solve the problem when you are unable to start Z ChatOps container.

Problem

You are not able to start Z ChatOps container.

Symptom

You might see logs as shown below:
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+         IBM Z ChatOps Container Command Line Utility         +
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Executing command start ...

Status of Container zchatops_112 --------------------- Not started.
Container zchatops_112 ------------------------------- Available.
Error response from daemon: driver failed programming external connectivity on endpoint zchatops_112 (4a7ef7bfa87355cf3c4aa2b755e1f77adc0895f044b3ee3cbe76a0bf53078183): Error starting userland proxy: listen tcp 0.0.0.0:5001: bind: address already in use
Error: failed to start containers: zchatops_112
[Error] Starting Container zchatops_112 -------------- Failed.

Cause

This is because the port 5001 or 4001 are already in use on the host.

Solution

You can solve this problem by using one of the following methods:
  • Stop the process which uses the port and start the container again.
  • You can edit the file bnzContainer.conf and change the property NETWORK_CONFIG to export another port for Z ChatOps. It is better to make the mapping port same for the host and container network, for example, "-p 4002:4002 -p 5002:5002".

    If you change the port number for Z ChatOps Microservice and the integration HTTP endpoint or messaging endpoint, you must modify port number microservice.port in $ZCHATOPS_HOME/config/bnz-server.yaml, and the port number of the integration HTTP endpoint or messaging endpoint in your chattool in $ZCHATOPS_HOME/config/chattools/<chat_tool>.yaml.

Note: If you are using socketMode to connect to Slack, you can only expose the Microservice port.