{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-guides/machine/sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":["admonition"]},"type":"markdown"},"seo":{"title":"Run multiple clients from a single machine","description":"Everything about Mosaic Journeys, SDKs, and APIs","siteUrl":"https://developer.transmitsecurity.com/","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"run-multiple-clients-from-a-single-machine","__idx":0},"children":["Run multiple clients from a single machine"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Integrating with our MIM IDP involves running a dedicated client application on your machine. This client interacts with the MIM IDP, facilitates management of the workload's identity, and exposes the workload to locally-running processes. This guide describes how to configure a MIM client if you'd like to run multiple client instances on the same machine."]},{"$$mdtype":"Tag","name":"Admonition","attributes":{"type":"info","name":"Note"},"children":[{"$$mdtype":"Tag","name":"p","attributes":{},"children":["See the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/guides/machine/quick_start_jwt_auth"},"children":["Quickstart"]}," for how to download and use the client for workload authentication."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configure-base-directory","__idx":1},"children":["Configure base directory"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The MIM client persists its identity and other state in a local folder, located at ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["~/.tsmim"]},". By running a client with a different base directory (i.e., folder), the client assumes a different identity in the target MIM IDP. When running multiple clients, each client must use a different base directory which is set by the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--dir=/path/to/folder"]}," CLI argument."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"configure-local-port","__idx":2},"children":["Configure local port"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The MIM client only listens to local API calls on the machine. By default, the listening port is 3013. The client will not run if the port is already open, either by another instance of the MIM client or by any other process. When running multiple clients, each client must use a different port which is set by the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["--local-port=1234"]}," CLI argument."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"full-cli-command","__idx":3},"children":["Full CLI command"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["The following command can be used to run a client for the first time with a specific base directory and port:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"shell","header":{"controls":{"copy":{}}},"source":"$ MIM_OPERATOR_BASE=https://<your-mim-host>/operator ./tsmim run --invite-code <ticket ID> --dir <path to folder> --local-port <port>\n","lang":"shell"},"children":[]}]},"headings":[{"value":"Run multiple clients from a single machine","id":"run-multiple-clients-from-a-single-machine","depth":1},{"value":"Configure base directory","id":"configure-base-directory","depth":2},{"value":"Configure local port","id":"configure-local-port","depth":2},{"value":"Full CLI command","id":"full-cli-command","depth":2}],"frontmatter":{"title":"Running multiple clients","excludeFromSearch":true,"markdown":{"toc":{"depth":2}},"seo":{"title":"Run multiple clients from a single machine"}},"lastModified":"2025-11-18T11:57:52.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/guides/machine/run_multiple_clients","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}