Skip to content

Add development docker-compose environment#196

Merged
liam-lowe merged 2 commits intomainfrom
liam-lowe/develop-docker-compose
Feb 19, 2026
Merged

Add development docker-compose environment#196
liam-lowe merged 2 commits intomainfrom
liam-lowe/develop-docker-compose

Conversation

@liam-lowe
Copy link
Contributor

What was changed

Adds a more-streamlined local development environment using Docker Compose.

Adds a minimal bi-directional S2S proxy setup.

Why?

  • Facilitate local development testing

Checklist

How was this tested?

  • The Compose file defines a smoke-test service, which validates correct initialization.

Any docs updates needed?

Updated development README file.

Comment on lines +83 to +86
healthcheck: # TODO: Replace with healthcheck endpoint.
test:
- CMD-SHELL
- "wget -q -O /dev/null -T 3 http://localhost:6060/debug/pprof/ || exit 1"
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As a followup - I'll add a more robust /healthcheck endpoint to proxy - this is a placeholder, and admittedly, not very useful

- ./..:/etc/develop:ro

services:
temporal-left:
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I followed existing semantics of some examples calling these "proxyLeft" and "proxyRight" - I'm not sure if this is our preferred semantic, especially when we introduce more than 2 proxy nodes.

start_period: 5s

temporal-right:
image: temporalio/temporal:1.5.0
Copy link
Contributor Author

@liam-lowe liam-lowe Feb 19, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For proper testing, will need to use a full temporal server setup - I don't believe cli development tool is sufficient, because I believe the server version is pinned.

Copy link
Contributor Author

@liam-lowe liam-lowe left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added some initial thoughts.

@liam-lowe liam-lowe marked this pull request as ready for review February 19, 2026 18:00
@liam-lowe liam-lowe requested a review from a team as a code owner February 19, 2026 18:00
- ./..:/etc/develop:ro

services:
temporal-left:
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can we use temporal-a and temporal-b instead of left/right? a, b is normally we used to name clusters. same for proxy naming.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I agree, A/B is a better naming than right/left, and will scale out better. There's nothing special about the existing right/left naming.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Agreed. There's a mismatch in the package between a/b and left/right - I saw left/right was used most-recently, so copied that.

I'll add consolidation of naming semantics as a follow-up PR.

temporal operator cluster health --address temporal-right:7233

# cross-server proxy-left routes to temporal-right
NS_L="proxy-left-$$"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe just name it as smoketest-a and smoketest-b

# cross-server proxy-left routes to temporal-right
NS_L="proxy-left-$$"
temporal operator namespace create "$NS_L" --retention 24h --address temporal-right:7233
temporal operator namespace describe "$NS_L" --address proxy-left:6233
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we probably also test outbound route something like

temporal operator cluster describe  --address proxy-left:{outbound_port}

which will show cluster-right (or a)

vice versa for proxy-right (or b)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added. Wanted to do cluster name validation, but the temporal server start-dev has the cluster name pinned as active. Added a todo.

@liam-lowe liam-lowe force-pushed the liam-lowe/develop-docker-compose branch from 0e9f9a5 to 939f234 Compare February 19, 2026 22:16
@liam-lowe liam-lowe merged commit bce0125 into main Feb 19, 2026
5 checks passed
@liam-lowe liam-lowe deleted the liam-lowe/develop-docker-compose branch February 19, 2026 23:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants