When strictly following the quickstart tutorial https://docs.confluent.io/current/quickstart/ce-docker-quickstart.html by setting up a local confluent installation with
git clone https://github.com/confluentinc/examples
cd examples
git checkout 5.3.1-post
cd cp-all-in-one/
docker-compose up -d --build
the deployment itself seems totally fine (all sub-systems report done)
To reproduce the issue
1) Install a the quickstart data source with
wget https://github.com/confluentinc/kafka-connect-datagen/raw/master/config/connector_users_cos.config
curl -X POST -H "Content-Type: application/json" --data @connector_users_cos.config http://localhost:8083/connectors
2) Setup the table in the Confluent UI. It initially seems fine since it picks up the data source and the schema

There is no error when creating the table.
However, a simple select fails (and so do all other queries in the webui):

So the KSQL web-ui is not functional at the moment when using the docker-compose quickstart deployment mode.
I am also receiving the same message: "An unknown error has occured. Check the connection settings." on my standalone instance on my EC2 instance. No docker involved, just grabbed the latest .zip download from Confluent online. Everything else appears to work. I can create the stream and table in KSQL but cannot query. I can log in locally to the ksql instance from the command line just fine. I see no errors in the ksql or control center logs when reproducing the message on the front end.
Same, here. I also switched over to the standalone zip-version after struggeling with the docker deployment but ksql is still not functional in the confluent UI. So with both local deployment options (docker and zip)l, the web integration of ksql is broken in v5.3.1.
Did you try to inspect docker-compose logs ksql-server for any errors?
The UI reaches out to the server, so the problem is certainly there, and the UI is likely just reporting what it can
Also, seems the command you provided is incorrect.
It should be as follows
brandl@dddocker02:cp-all-in-one$ docker-compose exec ksql-cli ksql http://ksql-server:8088
Because you want the CLI container to reach the server container, not connect to localhost
Thanks @cricket007 for pointing out my inital mistake when starting the cli. I've updated the ticket description accordingly.
Concerning the logs: There is nothing in docker-compose logs ksql-server, however when checking control-center logs with docker-compose logs control-center, it spits out the following error when creating topics/or tables:
control-center | [2019-09-24 09:51:09,562] INFO trace position set (io.confluent.controlcenter.rest.AbstractConsumerResource)
control-center | [2019-09-24 09:51:09,562] INFO trace calling poll (io.confluent.controlcenter.rest.res.ConsumeToSocket)
control-center | [2019-09-24 09:51:09,565] INFO [Consumer clientId=consumer-9, groupId=] Cluster ID: QRFEgT-NRUiXeu08ZiuaJQ (org.apache.kafka.clients.Metadata)
control-center | [2019-09-24 09:51:09,567] INFO [Consumer clientId=consumer-9, groupId=] Resetting offset for partition users-0 to offset 0. (org.apache.kafka.clients.consumer.internals.SubscriptionState)
control-center | [2019-09-24 09:51:09,568] INFO trace got a record ConsumerRecord(topic = users, partition = 0, leaderEpoch = 0, offset = 0, CreateTime = 1569318353918, serialized key size = 6, serialized value size = 34, headers = RecordHeaders(headers = [], isReadOnly = false), key = [B@1ab2375f, value = [B@6aec4577) (io.confluent.controlcenter.rest.res.ConsumeToSocket)
control-center | [2019-09-24 09:51:09,582] INFO [Consumer clientId=consumer-9, groupId=] Discovered group coordinator broker:29092 (id: 2147483646 rack: null) (org.apache.kafka.clients.consumer.internals.AbstractCoordinator)
control-center | [2019-09-24 09:51:09,583] WARN unable to close consumer (io.confluent.controlcenter.rest.AbstractConsumerResource)
control-center | java.util.ConcurrentModificationException: KafkaConsumer is not safe for multi-threaded access
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.acquire(KafkaConsumer.java:2286)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2172)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2127)
control-center | at io.confluent.controlcenter.rest.AbstractConsumerResource$2.run(AbstractConsumerResource.java:166)
control-center | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
control-center | at java.util.concurrent.FutureTask.run(FutureTask.java:266)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
control-center | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
control-center | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
control-center | at java.lang.Thread.run(Thread.java:748)
control-center | [2019-09-24 09:51:09,583] WARN [Consumer clientId=consumer-9, groupId=] Connection to node 2147483646 (broker/172.21.0.3:29092) could not be established. Broker may not be available. (org.apache.kafka.clients.NetworkClient)
control-center | [2019-09-24 09:51:09,583] INFO [Consumer clientId=consumer-9, groupId=] Group coordinator broker:29092 (id: 2147483646 rack: null) is unavailable or invalid, will attempt rediscovery (org.apache.kafka.clients.consumer.internals.AbstractCoordinator)
control-center | [2019-09-24 09:51:09,583] ERROR [Consumer clientId=consumer-9, groupId=] Failed to close coordinator (org.apache.kafka.clients.consumer.KafkaConsumer)
control-center | org.apache.kafka.common.errors.InterruptException: java.lang.InterruptedException
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.maybeThrowInterruptException(ConsumerNetworkClient.java:496)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:278)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:233)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:212)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.commitOffsetsSync(ConsumerCoordinator.java:693)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.maybeAutoCommitOffsetsSync(ConsumerCoordinator.java:752)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.close(ConsumerCoordinator.java:583)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2208)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2176)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2127)
control-center | at io.confluent.controlcenter.rest.res.ConsumeToSocket.close(ConsumeToSocket.java:86)
control-center | at io.confluent.controlcenter.rest.res.ConsumeToSocket.run(ConsumeToSocket.java:52)
control-center | at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:623)
control-center | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
control-center | at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
control-center | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
control-center | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
control-center | at java.lang.Thread.run(Thread.java:748)
control-center | Caused by: java.lang.InterruptedException
control-center | ... 20 more
control-center | [2019-09-24 09:51:09,585] WARN unable to consume (io.confluent.controlcenter.rest.res.ConsumeToSocket)
control-center | org.apache.kafka.common.errors.InterruptException: java.lang.InterruptedException
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.maybeThrowInterruptException(ConsumerNetworkClient.java:496)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:278)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:233)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient.poll(ConsumerNetworkClient.java:212)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.commitOffsetsSync(ConsumerCoordinator.java:693)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.maybeAutoCommitOffsetsSync(ConsumerCoordinator.java:752)
control-center | at org.apache.kafka.clients.consumer.internals.ConsumerCoordinator.close(ConsumerCoordinator.java:583)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2208)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2176)
control-center | at org.apache.kafka.clients.consumer.KafkaConsumer.close(KafkaConsumer.java:2127)
control-center | at io.confluent.controlcenter.rest.res.ConsumeToSocket.close(ConsumeToSocket.java:86)
control-center | at io.confluent.controlcenter.rest.res.ConsumeToSocket.run(ConsumeToSocket.java:52)
control-center | at com.google.common.util.concurrent.MoreExecutors$ScheduledListeningDecorator$NeverSuccessfulListenableFutureTask.run(MoreExecutors.java:623)
control-center | at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
control-center | at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
control-center | at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
control-center | at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
control-center | at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
control-center | at java.lang.Thread.run(Thread.java:748)
control-center | Caused by: java.lang.InterruptedException
control-center | ... 20 more
control-center | [2019-09-24 09:51:11,187] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/clusters/kafka HTTP/1.1" 200 143 3 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,210] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/clusters/kafka/display/CLUSTER_MANAGEMENT HTTP/1.1" 200 110 1 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,232] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/clusters/ksql HTTP/1.1" 200 91 1 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,256] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/clusters/connect HTTP/1.1" 200 86 1 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,274] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /3.0/license HTTP/1.1" 200 303 1 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,334] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/metrics/QRFEgT-NRUiXeu08ZiuaJQ/maxtime HTTP/1.1" 200 47 2 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,769] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "POST /api/ksql/KSQL/ksql HTTP/1.1" 200 1409 28 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,884] INFO 192.168.1.147 - - [24/Sep/2019:09:51:11 +0000] "GET /2.0/health/status HTTP/1.1" 200 150 2 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:11,942] INFO [Consumer clientId=consumer-1, groupId=] Unsubscribed all topics or patterns and assigned partitions (org.apache.kafka.clients.consumer.KafkaConsumer)
control-center | [2019-09-24 09:51:16,764] INFO 192.168.1.147 - - [24/Sep/2019:09:51:16 +0000] "POST /api/ksql/KSQL/ksql HTTP/1.1" 200 1409 27 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:16,943] INFO [Consumer clientId=consumer-1, groupId=] Unsubscribed all topics or patterns and assigned partitions (org.apache.kafka.clients.consumer.KafkaConsumer)
control-center | [2019-09-24 09:51:19,204] INFO 192.168.1.147 - - [24/Sep/2019:09:51:19 +0000] "POST /api/ksql/KSQL/ksql HTTP/1.1" 200 261 37 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:19,267] INFO 192.168.1.147 - - [24/Sep/2019:09:51:19 +0000] "POST /api/ksql/KSQL/ksql HTTP/1.1" 200 1602 25 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:19,446] INFO 192.168.1.147 - - [24/Sep/2019:09:51:19 +0000] "POST /api/ksql/KSQL/ksql HTTP/1.1" 200 1602 29 (io.confluent.rest-utils.requests)
control-center | [2019-09-24 09:51:21,941] INFO [Consumer clientId=consumer-1, groupId=] Unsubscribed all topics or patterns and assigned partitions (org.apache.kafka.clients.consumer.KafkaConsumer)
However, it may be that this is unrelated, because when reloading the query UI and trying again, it fails in the UI again (with the same unspecific error box) but does not create any stacktrace in the control-center nor ksql-server logs.
The error is here - Connection to node 2147483646 (broker/172.21.0.3:29092) could not be established. Broker may not be available., but broker:29092 is correct as far as a connection string goes.
But check out the broker logs as well to see if anything is going on
Thanks to your comment in https://github.com/confluentinc/cp-docker-images/issues/796, I could narrow down the issue: _When running the browser on the docker-host, the KSQL Confluent Web UI is working fine_ (which also defines a workaround until the issue is fixed).
The _error just occurs when running the browser on any other host_.
Since it is a webinterface the Confluent UI should clearly be functional also when being accessed from any machine (within the same network). All other components of the UI (brokers, connect) work flawlessly. This applies to local and docker quickstart deployment mode.
Thanks for reporting! We'll look into it.
Flagging as blocker as this needs fixing before 5.4 release (and back ported to 5.3)
Cc @ybyzek
When running the browser on the docker-host, the KSQL Confluent Web UI is working fine --> this is the way quickstart is meant to be run with the given docker-compose.yml file
The error just occurs when running the browser on any other host --> this scenario may require modification to the docker-compose file and is not the way to run the quickstart.
For reference: https://docs.confluent.io/current/ksql/docs/installation/server-config/integrate-ksql-with-confluent-control-center.html#check-network-connectivity-between-ksql-and-c3-short
Make sure that your browser can reach the info endpoint at http://<ksql.advertised.url>/info.
ksql.advertised.url is set to localhost: https://github.com/confluentinc/examples/blob/5.3.1-post/cp-all-in-one/docker-compose.yml#L102
cc: @joel-hamill and @JimGalasyn since it involves the CP quickstart
Thanks for looking into it. Because of the documentation pointer provided above, the issue is solved for me, but improving the docs will clearly help other new users.
To make sure that the local quickstart deployment mode does not slip through unnoticed when you patch the docker quickstart docs: It's affected in the same way! To make control-center functional for non-local browser access when using a local quickstart deployment, the advertised.listeners need to be adjusted first.
Hi, @holgerbrandl Can you share the steps of making control-center functional for non-local browsers? I'd like to run the control-center server on AWS EC2 and use my local browser to do some test.
I ended up updating my confluent-control-center-production.properties file, and changing the KSQL Cluster URL to my ec2 publicly reachable hostname. Hope this helps others.
# KSQL cluster URL
#confluent.controlcenter.ksql.url=http://localhost:8088
confluent.controlcenter.ksql.url=http://ec2-x-x-x-x.compute-x.amazonaws.com:8088
I think the best thing to do is to be clear in the docs in two places:
Let us know if we're missing anything else here. Thanks for helping us improve the project, everyone!
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
Remember to forward your ports if you are running on a cloud VM!
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
- CONTROL_CENTER_KSQL_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_KSQL_ADVERTISED_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://xx.xxx.xx.xxx:8088"
Remember to forward your ports if you are running on a cloud VM!
thanks!
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
- CONTROL_CENTER_KSQL_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_KSQL_ADVERTISED_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://xx.xxx.xx.xxx:8088"
Remember to forward your ports if you are running on a cloud VM!
Hi,
I also run with the cp-all-in-one and when I do that (by replacing xx.xxx.xx.xxx by my VM's IP), the Cluster/KSQL tab in the control center shows "You don't have any KSQL clusters" :/
Any idea ?
Thanks,
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
- CONTROL_CENTER_KSQL_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_KSQL_ADVERTISED_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://xx.xxx.xx.xxx:8088"
Remember to forward your ports if you are running on a cloud VM!
Hi,
I also run with the cp-all-in-one and when I do that (by replacing xx.xxx.xx.xxx by my VM's IP), the Cluster/KSQL tab in the control center shows "You don't have any KSQL clusters" :/
Any idea ?
Thanks,
Remember to forward your ports! Which ones are open?
Hi,
I also run with the cp-all-in-one and when I do that (by replacing xx.xxx.xx.xxx by my VM's IP), the Cluster/KSQL tab in the control center shows "You don't have any KSQL clusters" :/
Any idea ?
Thanks,Remember to forward your ports! Which ones are open?
I do SSH port forwarding with gcloud for the ports 9021 (control center) , 9092 (broker) and 8088 (ksql server). And I can access from my local browser to http://localhost:8088/info and of course to the control center http://localhost:9021
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
- CONTROL_CENTER_KSQL_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_KSQL_ADVERTISED_URL: "http://xx.xxx.xx.xxx:8088"
- CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://xx.xxx.xx.xxx:8088"
Remember to forward your ports if you are running on a cloud VM!
Hi,
I also run with the cp-all-in-one and when I do that (by replacing xx.xxx.xx.xxx by my VM's IP), the Cluster/KSQL tab in the control center shows "You don't have any KSQL clusters" :/
Any idea ?
Thanks,Remember to forward your ports! Which ones are open?
I do SSH port forwarding with gcloud for the ports 9021 (control center) , 9092 (broker) and 8088 (ksql server). And I can access from my local browser to http://localhost:8088/info and of course to the control center http://localhost:9021
Looks good to me. I have also done port forwarding for the ports 8081(Schema Registry), 8082(REST API) and 8083(Connector). I am using an Azure VM and configured the ports from the "Networks" section, if any of that matters for you. Otherwise I'm afraid I don't know why that would happen.
EDIT: Also make sure all containers are running. I've been having a little bit of (weird) trouble lately, and have to run "docker-compose up ..." a couple times until I get all containers to work.
Looks good to me. I have also done port forwarding for the ports 8081(Schema Registry), 8082(REST API) and 8083(Connector). I am using an Azure VM and configured the ports from the "Networks" section, if any of that matters for you. Otherwise I'm afraid I don't know why that would happen.
EDIT: Also make sure all containers are running. I've been having a little bit of (weird) trouble lately, and have to run "docker-compose up ..." a couple times until I get all containers to work.
All containers are running. My problem appears finally to be more low-level, I can't even correctly run commands in KSQL CLI (within the VM).
Running docker-compose logs ksql-server shows the following WARN line :
[kafka-admin-client-thread | adminclient-1] WARN org.apache.kafka.clients.NetworkClient - [AdminClient clientId=adminclient-1] Connection to node -1 (broker/172.22.0.3:29092) could not be established. Broker may not be available.
I will try to investigate and update my post or reply if I find any solution to this.
All containers are running. My problem appears finally to be more low-level, I can't even correctly run commands in KSQL CLI (within the VM).
Runningdocker-compose logs ksql-servershows the following WARN line :
[kafka-admin-client-thread | adminclient-1] WARN org.apache.kafka.clients.NetworkClient - [AdminClient clientId=adminclient-1] Connection to node -1 (broker/172.22.0.3:29092) could not be established. Broker may not be available.
I will try to investigate and update my post or reply if I find any solution to this.
As it's said in this thread probably your VM doesn't allow connections to that port or something is misconfigured in your docker-compose.yml file.
Take a look at it and try to expose kafka to a port KSQL can access.
As it's said in this thread probably your VM doesn't allow connections to that port or something is misconfigured in your docker-compose.yml file.
Take a look at it and try to expose kafka to a port KSQL can access.
My bad ... I didn't follow strictly the quickstart for KSQL streams and tables. After doing that (i.e. quickstart/KSQL), I see that everything works from the C3 UI (with pageviews, users ...).
My problem is linked to my custom topic and streams, and not to ksql-server or C3 UI.
So, I can close my specific request here.
UPDATE : It can happen that a KSQL query returns no data, even if everything is configured (that was my problem). In my case, I didn't chose the correct encoding (AVRO instead of actual JSON). This article was very helpful, plus the standard troubleshooting page.
I am also receiving the same message: "An unknown error has occured. Check the connection settings." on my standalone instance on my EC2 instance. No docker involved, just grabbed the latest .zip download from Confluent online. Everything else appears to work. I can create the stream and table in KSQL but cannot query. I can log in locally to the ksql instance from the command line just fine. I see no errors in the ksql or control center logs when reproducing the message on the front end.
Was there any resolution for this error, same with me i have installed the standlone confluent on EC2, everything else works expect when i run the query i get the same error as "An unknown error has occured. Check the connection settings." I tried updating registry, ksql , listener db to my EC2 public DNS still i get the error while running the query on control center. Same table return result in Ksql CLI
@jesusatgar : In your edits to the environment variables, should this
CONTROL_CENTER_SCHEMA_REGISTRY_URL: "http://xx.xxx.xx.xxx:8088"
be http:// IP:8081 instead of 8088?
I added a note per @MichaelDrogalis 's suggestion upthread.
Most helpful comment
@cnaccio 's solution worked for me. As I was running the cp-all-in-one example, I had to modify the following lines in docker-compose.yml:
Remember to forward your ports if you are running on a cloud VM!