Unable to run the temporal examples against the local temporal server

seeing the following exception:
I am seeing the following exception running above code to local server
RegisterNamespace.main()Exception in thread “main” io.grpc.StatusRuntimeException: UNIMPLEMENTED: unknown service temporal.workflowservice.v1.WorkflowService
at io.grpc.stub.ClientCalls.toStatusRuntimeException(ClientCalls.java:244)
at io.grpc.stub.ClientCalls.getUnchecked(ClientCalls.java:225)
at io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:142)
at io.temporal.workflowservice.v1.WorkflowServiceGrpc$WorkflowServiceBlockingStub.registerNamespace(WorkflowServiceGrpc.java:2546)
at io.temporal.samples.common.RegisterNamespace.main(RegisterNamespace.java:19)
FAILED
temporal sevrer : 0.28.0, 0.27.0

How do you run local temporal server? Are you able to see UI at localhost:8088? Are you able to execute CLI commands against it?

Did you follow installation instructions?

Hey Max,

I am able to see see UI at localhost:8088, followed the instructions to run docker-compose, i am not able to connect to localhost:7233 using tctl

docker run --rm temporalio/tctl:0.27.0 --namespace samples-namespace namespace describe

error: desc = "transport: Error while dialing dial tcp 127.0.0.1:7233: connect: connection refused

this fails for both 0.27.0 and 0.28.0 versions

Could you try prune your docker?

Ctrl-C to stop the docker compose
docker-compose down
docker volume prune

redownload docker-compose file:

curl -L https://github.com/temporalio/temporal/releases/latest/download/docker.tar.gz | tar -xz --strip-components 1 docker/docker-compose.yml

docker-compose up

this is what I am seeing on the server console (docker-compose) after I startup
temporal_1 | Namespace default successfully registered.
temporal_1 | + tctl --ns default namespace describe
temporal_1 | Name: default
temporal_1 | Id: b8e8c595-6701-41a0-b7b8-78253477f478
temporal_1 | Description: Default namespace for Temporal Server
temporal_1 | OwnerEmail:
temporal_1 | NamespaceData: map[string]string(nil)
temporal_1 | State: Registered
temporal_1 | RetentionInDays: 24h0m0s
temporal_1 | ActiveClusterName: active
temporal_1 | Clusters: active
temporal_1 | HistoryArchivalState: Disabled
temporal_1 | VisibilityArchivalState: Disabled
temporal_1 | Bad binaries to reset:
temporal_1 | ±----------------±---------±-----------±-------+
temporal_1 | | BINARY CHECKSUM | OPERATOR | START TIME | REASON |
temporal_1 | ±----------------±---------±-----------±-------+
temporal_1 | ±----------------±---------±-----------±-------+
temporal_1 | Default namespace registration complete.
temporal_1 | + echo ‘Default namespace registration complete.’

But I am still seeing the following error:

docker run --rm temporalio/tctl:0.28.0 --namespace samples-namespace namespace describe

Error: Operation DescribeNamespace failed.

Error Details: last connection error: connection error: desc = “transport: Error while dialing dial tcp 127.0.0.1:7233: connect: connection refused”

1 Like

I was able to reproduce the problem locally. We are investigating.

You need to use --network=host flag:

docker run --network=host --rm temporalio/tctl:0.28.0 --namespace samples-namespace namespace describe

Temporal CLI docs have more information on this.

If I am running a Temporal cluster, i.e. temporal server start-dev, why do I need to run this ?

docker run --network=host --rm temporalio/tctl:0.28.0 --namespace samples-namespace namespace describe

This error only appear when running the applications from docker-compose, it work fine when run make gobuild