

You can use this script as a starting point for producing your own images. This script defaults to creating images that run all the Temporal Server services in a single process. The Docker images in this repo are produced using the Temporal Server auto-setup.sh script. It also enables you to try Advanced Visibility using Search Attributes, emit metrics, and even play with the Archival feature.

The temporalio/docker-compose repo comes loaded with a variety of configuration templates that enable you to try all three databases that the Temporal Platform supports (PostgreSQL, MySQL, Cassandra). If you have Docker and Docker Compose installed, all you need to do is clone the temporalio/docker-compose repo and run the docker compose up command from its root. We can see that in the configuration we've specified it to connect to the remote JVM using the 5005 port.You can easily run a Temporal Cluster in Docker containers using Docker Compose. So the above command starts our Docker container, and we can now configure remote debugging configuration to connect to it: In the JAVA_TOOL_OPTIONS we pass the value -agentlib:jdwp=transport=dt_shmem,address=,server=y,suspend=n to allow the Java process to start a JDB debug session and pass the value address=*:5005 to specify that 5005 will be our remote debugging port. We are using the -d extension for running docker in detached mode and -e for passing JAVA_TOOL_OPTIONS as an environment variable to the Java process. Apart from the normal HTTP port, which is 8080, we are also mapping an additional port, 5005, for remote debugging using the -p extension. Here docker-java-jar is our image name, and latest is its tag. If we were using Java 11, we'd use this command instead: docker run -d -p 8080:8080 -p 5005:5005 -e JAVA_TOOL_OPTIONS="-agentlib:jdwp=transport=dt_socket,address=*:5005,server=y,suspend=n" docker-java-jar:latest Docker run -d -p 8080:8080 -p 5005:5005 -e JAVA_TOOL_OPTIONS="-agentlib:jdwp=transport=dt_socket,address=5005,server=y,suspend=n" docker-java-jar:latest
