Temporal CLI server command reference
start-dev
Run a development Temporal Server on your local system.
+------------------------------------------------------------------------+
| WARNING: The development server is not intended for production use. |
| It skips certain HTTP security checks to make local use simpler. |
| |
| For production use, see: |
| https://docs.temporal.io/production-deployment |
+------------------------------------------------------------------------+
View the Web UI for the default configuration at: http://localhost:8233
temporal server start-dev
Add persistence for Workflow Executions across runs:
temporal server start-dev \
--db-filename path-to-your-local-persistent-store
Set the port from the front-end gRPC Service (7233 default):
temporal server start-dev \
--port 7000
Use a custom port for the Web UI. The default is the gRPC port (7233 default) plus 1000 (8233):
temporal server start-dev \
--ui-port 3000
Use the following options to change the behavior of this command.
| Flag | Required | Description | Default |
|---|---|---|---|
--db-filename, -f | No | string Path to file for persistent Temporal state store. By default, Workflow Executions are lost when the server process dies. | |
--dynamic-config-value | No | string[] Dynamic configuration value using KEY=VALUE pairs. Keys must be identifiers, and values must be JSON values. For example: YourKey="YourString" Can be passed multiple times. | |
--headless | No | bool Disable the Web UI. | |
--http-port | No | int Port for the HTTP API service. Defaults to a random free port. | 0 |
--ip | No | string IP address bound to the front-end Service. | localhost |
--log-config | No | bool Log the server config to stderr. | |
--metrics-port | No | int Port for the '/metrics' HTTP endpoint. Defaults to a random free port. | |
--namespace, -n | No | string[] Namespaces to be created at launch. The "default" Namespace is always created automatically. | |
--port, -p | No | int Port for the front-end gRPC Service. | 7233 |
--search-attribute | No | string[] Search attributes to register using KEY=VALUE pairs. Keys must be identifiers, and values must be the search attribute type, which is one of the following: Text, Keyword, Int, Double, Bool, Datetime, KeywordList. | |
--sqlite-pragma | No | string[] SQLite pragma statements in "PRAGMA=VALUE" format. | |
--ui-asset-path | No | string UI custom assets path. | |
--ui-codec-endpoint | No | string UI remote codec HTTP endpoint. | |
--ui-ip | No | string IP address bound to the Web UI. Defaults to same as '--ip' value. | |
--ui-port | No | int Port for the Web UI. Defaults to '--port' value + 1000. | |
--ui-public-path | No | string The public base path for the Web UI. Defaults to /. |
Global Flags
The following options can be used with any command.
| Flag | Required | Description | Default |
|---|---|---|---|
--address | No | string Temporal Service gRPC endpoint. | localhost:7233 |
--api-key | No | string API key for request. | |
--client-authority | No | string Temporal gRPC client :authority pseudoheader. | |
--client-connect-timeout | No | duration The client connection timeout. 0s means no timeout. | |
--codec-auth | No | string Authorization header for Codec Server requests. | |
--codec-endpoint | No | string Remote Codec Server endpoint. | |
--codec-header | No | string[] HTTP headers for requests to codec server. Format as a KEY=VALUE pair. May be passed multiple times to set multiple headers. | |
--color | No | string-enum Output coloring. Accepted values: always, never, auto. | auto |
--command-timeout | No | duration The command execution timeout. 0s means no timeout. | |
--config-file | No | string File path to read TOML config from, defaults to $CONFIG_PATH/temporal/temporal.toml where $CONFIG_PATH is defined as $HOME/.config on Unix, $HOME/Library/Application Support on macOS, and %AppData% on Windows. (Experimental) | |
--disable-config-env | No | bool If set, disables loading environment config from environment variables. (Experimental) | |
--disable-config-file | No | bool If set, disables loading environment config from config file. (Experimental) | |
--env | No | string Active environment name (ENV). | default |
--env-file | No | string Path to environment settings file. Defaults to $HOME/.config/temporalio/temporal.yaml. | |
--grpc-meta | No | string[] HTTP headers for requests. Format as a KEY=VALUE pair. May be passed multiple times to set multiple headers. Can also be made available via environment variable as TEMPORAL_GRPC_META_[name]. | |
--identity | No | string The identity of the user or client submitting this request. Defaults to "temporal-cli:HOST". | |
--log-format | No | string-enum Log format. Accepted values: text, json. | text |
--log-level | No | string-enum Log level. Default is "info" for most commands and "warn" for server start-dev. Accepted values: debug, info, warn, error, never. | info |
--namespace, -n | No | string Temporal Service Namespace. | default |
--no-json-shorthand-payloads | No | bool Raw payload output, even if the JSON option was used. | |
--output, -o | No | string-enum Non-logging data output format. Accepted values: text, json, jsonl, none. | text |
--profile | No | string Profile to use for config file. (Experimental) | |
--time-format | No | string-enum Time format. Accepted values: relative, iso, raw. | relative |
--tls | No | bool Enable base TLS encryption. Does not have additional options like mTLS or client certs. This is defaulted to true if api-key or any other TLS options are present. Use --tls=false to explicitly disable. | |
--tls-ca-data | No | string Data for server CA certificate. Can't be used with --tls-ca-path. | |
--tls-ca-path | No | string Path to server CA certificate. Can't be used with --tls-ca-data. | |
--tls-cert-data | No | string Data for x509 certificate. Can't be used with --tls-cert-path. | |
--tls-cert-path | No | string Path to x509 certificate. Can't be used with --tls-cert-data. | |
--tls-disable-host-verification | No | bool Disable TLS host-name verification. | |
--tls-key-data | No | string Private certificate key data. Can't be used with --tls-key-path. | |
--tls-key-path | No | string Path to x509 private key. Can't be used with --tls-key-data. | |
--tls-server-name | No | string Override target TLS server name. |