### Start a local HTTP server Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/engagements/cli.md Start a simple HTTP server on your local machine to receive intercepted traffic. This is a common setup step when creating an intercept. ```console python3 -m http.server 8080 ``` -------------------------------- ### Example Telepresence Client Configuration Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/config.md This example demonstrates the structure and conventions for Telepresence client configuration. Note that the `privateRepo` registry used in this example does not exist and should not be used verbatim. ```yaml timeouts: agentInstall: 1m intercept: 10s logLevels: userDaemon: debug images: registry: privateRepo # This overrides the default docker.io/datawire repo agentImage: tel2:$version$ # This overrides the agent image to inject when engaging with a workload grpc: maxReceiveSize: 10Mi ``` -------------------------------- ### Telepresence Compose Start Usage Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_compose_start.md Basic usage of the telepresence compose start command. Specify flags and optionally the services to start. ```bash telepresence compose start [flags] [services] ``` -------------------------------- ### Start Command Flags Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_mcp_start.md Flags available for the 'start' command, including help and log level configuration. ```bash -h, --help help for start --log-level string Log level (debug, info, warn, error) ``` -------------------------------- ### Install Telepresence Helm Chart Source: https://github.com/telepresenceio/telepresence/blob/release/v2/charts/telepresence-oss/README.md Use this command to install the Telepresence Helm chart. You can customize the installation using --set flags or a values file. ```sh $ telepresence helm install [--set x=y | --values ] ``` -------------------------------- ### Install Telepresence OSS Helm Chart Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx Install the OSS version of the Telepresence Helm chart using Helm. Ensure you have Helm installed and configured. ```bash helm install traffic-manager oci://ghcr.io/telepresenceio/telepresence-oss --namespace ambassador --version 2.20.0 ``` -------------------------------- ### Install Telepresence with Homebrew (macOS) Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Use Homebrew to install the Telepresence OSS package. This method installs the standalone binary and does not set up the root daemon as a system service. ```shell brew install telepresenceio/telepresence/telepresence-oss ``` -------------------------------- ### Telepresence Client Configuration Example Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/config.md An example of Telepresence client configuration, demonstrating settings for timeouts, log levels, images, gRPC, DNS, and routing. Note that the registry specified should not be used verbatim. ```yaml client: timeouts: agentInstall: 1m intercept: 10s logLevels: userDaemon: debug images: registry: privateRepo # This overrides the default docker.io/datawire repo agentImage: tel2:$version$ # This overrides the agent image to inject when engaging with a workload grpc: maxReceiveSize: 10Mi connectionTTL: 48h dns: includeSuffixes: [.private] excludeSuffixes: [.se, .com, .io, .net, .org, .ru] lookupTimeout: 30s routing: alsoProxySubnets: - 1.2.3.4/32 neverProxySubnets: - 1.2.3.4/32 ``` -------------------------------- ### SSHFS Version Output Example Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/troubleshooting.md This output shows a successful SSHFS installation, indicating the SSHFS version and the FUSE library version. It also shows that no mount point is currently active. ```text $ sshfs -V SSHFS version 2.10 FUSE library version: 2.9.9 fuse: no mount point ``` -------------------------------- ### Install Telepresence Manually on Windows ARM64 using PowerShell Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Follow these steps to manually install Telepresence on Windows ARM64 by downloading and extracting the zip file, then running the install script. This method requires elevated privileges and does not set up the daemon as a service. ```powershell $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-windows-arm64.zip -OutFile telepresence.zip Expand-Archive -Path telepresence.zip -DestinationPath telepresenceInstaller/telepresence Remove-Item 'telepresence.zip' cd telepresenceInstaller/telepresence powershell.exe -ExecutionPolicy bypass -c " . '."'install-telepresence.ps1';" cd ../.. Remove-Item telepresenceInstaller -Recurse -Confirm:$false -Force ``` -------------------------------- ### Install Telepresence OSS with Brew Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx Use this command to install the Open-Source Software version of Telepresence using Homebrew. ```bash brew install telepresenceio/telepresence/telepresence-oss ``` -------------------------------- ### Download and Install Telepresence Binary (Linux ARM64) Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Manually download and install the Telepresence binary for Linux ARM64 systems. This requires using `curl` to download the binary and placing it in `/usr/local/bin/telepresence`. ```shell # ARM64 sudo curl -fL https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-arm64 -o /usr/local/bin/telepresence ``` -------------------------------- ### Install Telepresence Manually on Windows AMD64 using PowerShell Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Follow these steps to manually install Telepresence on Windows AMD64 by downloading and extracting the zip file, then running the install script. This method requires elevated privileges and does not set up the daemon as a service. ```powershell $ProgressPreference = 'SilentlyContinue' Invoke-WebRequest https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-windows-amd64.zip -OutFile telepresence.zip Expand-Archive -Path telepresence.zip -DestinationPath telepresenceInstaller/telepresence Remove-Item 'telepresence.zip' cd telepresenceInstaller/telepresence powershell.exe -ExecutionPolicy bypass -c " . '."'install-telepresence.ps1';" cd ../.. Remove-Item telepresenceInstaller -Recurse -Confirm:$false -Force ``` -------------------------------- ### Install Telepresence with Fedora/RHEL Package Manager Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Install Telepresence on Fedora/RHEL systems using the provided .rpm package. This method installs the root daemon as a systemd service. ```shell # Download the latest .rpm package # AMD64 curl -fLO https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-amd64.rpm # ARM64 curl -fLO https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-arm64.rpm # Install the package sudo dnf install ./telepresence-linux-*.rpm ``` -------------------------------- ### Download and Install Telepresence Binary (Linux AMD64) Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Manually download and install the Telepresence binary for Linux AMD64 systems. This requires using `curl` to download the binary and placing it in `/usr/local/bin/telepresence`. ```shell # 1. Download the latest binary (~95 MB): # AMD64 sudo curl -fL https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-amd64 -o /usr/local/bin/telepresence ``` -------------------------------- ### Install Telepresence using Helm Chart Source: https://github.com/telepresenceio/telepresence/blob/release/v2/test-infra/aws-okd/README.md Install Telepresence on OpenShift using the provided Helm chart. Ensure you are in the root of your telepresence.git checkout. This command creates a temporary directory, generates the Helm chart, and then installs it into the 'ambassador' namespace, creating it if it doesn't exist. Setting securityContext to null is a specific requirement for this installation. ```bash mkdir tmpdir go run ./packaging/gen_chart.go tmpdir helm install traffic-manager ./tmpdir/telepresence-*.tgz -n ambassador --create-namespace --set securityContext=null ``` -------------------------------- ### Start a Container with Daemon Network Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/docker-run.md Use the `telepresence docker-run` command to start a container that shares the network and DNS of the Telepresence daemon container. ```bash telepresence docker-run ``` -------------------------------- ### Serve Web Service with Telepresence Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/howtos/docker-compose.md Start the browser with a URL pointing to the 'web' service in the cluster after establishing a Telepresence connection. ```bash telepresence serve web ``` -------------------------------- ### Telepresence Helm Install Command Usage Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_helm_install.md This snippet shows the basic usage of the telepresence helm install command. It is used to initiate the installation of the Telepresence traffic manager. ```bash telepresence helm install [flags] ``` -------------------------------- ### Install Telepresence with Debian/Ubuntu Package Manager Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Install Telepresence on Debian/Ubuntu systems using the provided .deb package. This method installs the root daemon as a systemd service. ```shell # Download the latest .deb package # AMD64 curl -fLO https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-amd64.deb # ARM64 curl -fLO https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-arm64.deb # Install the package sudo apt install ./telepresence-linux-*.deb ``` -------------------------------- ### Install WiX Toolset for Windows Installer Source: https://github.com/telepresenceio/telepresence/blob/release/v2/build-aux/INSTALLERS.md Installs the WiX Toolset and necessary extensions for building the Windows installer. This is part of the CI build process. ```yaml - name: Install WiX Toolset run: | dotnet tool install --global wix wix extension add -g WixToolset.BootstrapperApplications.wixext wix extension add -g WixToolset.UI.wixext wix extension add -g WixToolset.Util.wixext ``` -------------------------------- ### Build WiX Installer for Windows Source: https://github.com/telepresenceio/telepresence/blob/release/v2/build-aux/INSTALLERS.md Builds the WiX installer bundle for the Windows platform. Ensure the architecture is specified. ```yaml - name: Build WiX Installer run: make bundle ARCH=amd64 ``` -------------------------------- ### Install Telepresence Helm Chart with Namespace Creation Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx Installs the Telepresence traffic-manager using the Helm chart. The --create-namespace flag, defaulting to true, controls namespace creation. ```bash telepresence helm install --create-namespace ``` -------------------------------- ### Install nfpm CI Step Source: https://github.com/telepresenceio/telepresence/blob/release/v2/build-aux/INSTALLERS.md This CI step downloads and installs the nfpm tool, a package manager for Go binaries, to the system's PATH. ```yaml - name: Install nfpm run: | curl -sfL "https://github.com/goreleaser/nfpm/releases/download/v2.44.1/nfpm_2.44.1_Linux_x86_64.tar.gz" | tar xz -C /tmp sudo mv /tmp/nfpm /usr/local/bin/nfpm ``` -------------------------------- ### Start MCP Server Command Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_mcp_start.md Use this command to start the MCP server for exposing CLI commands to AI assistants. ```bash telepresence mcp start [flags] ``` -------------------------------- ### Docker Compose CP Command Example Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_compose.md Example of copying files between a local path and a service container using Docker Compose. ```bash docker compose cp [OPTIONS] SRC_PATH|- SERVICE:DEST_PATH ``` -------------------------------- ### Example Curl Request Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/routing.md This example demonstrates a basic curl request. It's used to illustrate how header-based routing in service meshes like Istio can fail if the request does not originate from the same namespace as the host. ```bash curl some-host ``` -------------------------------- ### Connect with Docker Daemon Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/docker-run.md Start the Telepresence daemon in a Docker container on your laptop. This confines network modifications to a Docker network. ```bash $ telepresence connect --docker ``` -------------------------------- ### Command-Specific Help Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_config.md Explains how to get help for a specific subcommand within 'telepresence config'. ```bash telepresence config [command] --help ``` -------------------------------- ### Install Telepresence Helm Chart without Namespace Creation Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx Installs the Telepresence traffic-manager using the Helm chart, explicitly disabling namespace creation. The command will fail if the namespace is missing. ```bash telepresence helm install --create-namespace=false ``` -------------------------------- ### Telepresence Serve Usage Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_serve.md Basic command structure for starting the telepresence serve command, specifying the name of the remote service. ```bash telepresence serve [flags] ``` -------------------------------- ### Get the name of the started Docker container Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/howtos/docker.md After starting a container with 'telepresence docker-run', you can find its name using 'docker ps'. ```bash $ docker ps --last 1 --format {{.Names}} fervent_goodall ``` -------------------------------- ### Build Telepresence Binary and Docker Images Source: https://github.com/telepresenceio/telepresence/blob/release/v2/CLAUDE.md Set environment variables for version and registry, then use 'make' commands to build the binary and Docker images for local development. ```bash # Set required environment variables export TELEPRESENCE_VERSION=v2.x.x-alpha.0 # or use auto-generated version export TELEPRESENCE_REGISTRY=local # 'local' for Docker Desktop, or 'ghcr.io/telepresenceio' # Build the telepresence binary make build # Build Docker images (for local Kubernetes development) make client-image # Client container image make tel2-image # Traffic-manager/traffic-agent image # Build everything for local development make build client-image tel2-image # Install to system make install # Clean build artifacts make clean make clobber # Also removes tools ``` -------------------------------- ### Telepresence Role and RoleBinding for Static Namespace Installation Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/rbac.md This Role and RoleBinding are for Telepresence clients in a static namespace installation. It grants permissions to get pods, list pods, get pod logs, and create port-forwards directly to pods within a specific namespace. ```yaml kind: Role apiVersion: rbac.authorization.k8s.io/v1 metadata: name: telepresence-client rules: - apiGroups: [""] resources: ["pods"] verbs: ["get"] # Necessary if the client should be able to gather the pod logs - apiGroups: [""] resources: ["pods"] verbs: ["list"] - apiGroups: [""] resources: ["pods/log"] verbs: ["get"] # All traffic will be routed via the traffic-manager unless a portforward can be created directly to a pod - apiGroups: [""] resources: ["pods/portforward"] verbs: ["create"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: RoleBinding metadata: name: telepresence-client subjects: - kind: ServiceAccount name: tp-user namespace: ambassador roleRef: kind: Role name: telepresence-client apiGroup: rbac.authorization.k8s.io ``` -------------------------------- ### Configure Sudo Timeout for Root Daemon Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx The root daemon start logic has been updated to handle `sudo` configured with `timestamp_timeout=0`. It now performs a single `sudo` call to ensure proper daemon startup. ```bash sudo --non-interactive ``` -------------------------------- ### Run Extended Docker Compose Sample Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/howtos/docker-compose.md Execute a Docker Compose setup with Telepresence to discover extensions, connect to a cluster, and modify service configurations for seamless integration. Observe the output to verify service proxying and cluster connectivity. ```console $ telepresence compose up ✔ Connected to context minikube, namespace emojivoto (https://192.168.49.2:8443) 2.4s ✔ Proxied service voting 0.0s [+] Running 4/4 ✔ Network emojivoto_default Created 0.1s ✔ Container emojivoto-emoji-1 Created 0.0s ✔ Container emojivoto-web-1 Created 0.0s ✔ Container emojivoto-vote-bot-1 Created 0.0s Attaching to emoji-1, vote-bot-1, web-1 emoji-1 | 2025/07/19 05:42:39 Starting grpc server on GRPC_PORT=[8080] web-1 | 2025/07/19 05:42:39 Connecting to [voting:8080] web-1 | 2025/07/19 05:42:39 Connecting to [emoji:8080] web-1 | 2025/07/19 05:42:39 Starting web server on WEB_PORT=[8080] and MESSAGE_OF_THE_DAY=[] vote-bot-1 | ✔ Voting for :older_man: vote-bot-1 | ✔ Voting for :100: vote-bot-1 | ✔ Voting for :bulb: ... ``` -------------------------------- ### Report Traffic-Manager Pod Readiness Issues Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx When `telepresence helm install` or `telepresence helm upgrade` encounters issues with the traffic-manager pod becoming ready, it now reports the Kubernetes reason (e.g., `ImagePullBackOff`) and suggests using `kubectl describe pod` for more details. The command aborts on detecting terminal failures. ```bash telepresence helm install ``` ```bash telepresence helm upgrade ``` -------------------------------- ### Namespace Collision Error Example Source: https://github.com/telepresenceio/telepresence/blob/release/v2/charts/telepresence-oss/README.md This is an example of the error message received when attempting to install a namespace-scoped Traffic Manager that conflicts with an existing one managing overlapping namespaces. ```text Error: rendered manifests contain a resource that already exists. Unable to continue with install: ConfigMap "traffic-manager-claim" in namespace "b" exists and cannot be imported into the current release: invalid ownership metadata; annotation validation error: key "meta.helm.sh/release-namespace" must equal "c": current value is "a" ``` -------------------------------- ### Configure Agent-Injector Webhook Diagnostics Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx When the agent-injector webhook is unreachable, Telepresence now provides clearer diagnostics, suggesting EKS/Calico remedies like `hostNetwork=true` or an externally exposed webhook. Refer to the troubleshooting guide for detailed decision paths. ```yaml hostNetwork: true ``` -------------------------------- ### Configure Telepresence Client DNS Settings Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/config.md Example `values.yaml` demonstrating how to configure DNS suffixes, local addresses, and lookup timeouts for the Telepresence client. ```yaml client: dns: includeSuffixes: [.private] excludeSuffixes: [.se, .com, .io, .net, .org, .ru] localAddresses: [172.12.0.53:53] lookupTimeout: 30s ``` -------------------------------- ### Telepresence ClusterRole and ClusterRoleBinding for Dynamic Namespaces Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/rbac.md This ClusterRole and ClusterRoleBinding provide Telepresence clients with necessary permissions in a dynamic namespace installation. It allows clients to get and list namespaces, get pods, list pods, get pod logs, and create port-forwards directly to pods. ```yaml kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: telepresence-ambassador rules: - apiGroups: - "" resources: - "namespaces" verbs: ["get", "list", "watch"] - apiGroups: [""] resources: ["pods"] verbs: ["get"] # Necessary if the client should be able to gather the pod logs - apiGroups: [""] resources: ["pods"] verbs: ["list"] - apiGroups: [""] resources: ["pods/log"] verbs: ["get"] # All traffic will be routed via the traffic-manager unless a portforward can be created directly to a pod - apiGroups: [""] resources: ["pods/portforward"] verbs: ["create"] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: telepresence-ambassador subjects: - kind: ServiceAccount name: tp-user namespace: ambassador roleRef: kind: ClusterRole name: telepresence-ambassador apiGroup: rbac.authorization.k8s.io ``` -------------------------------- ### Show Ingress URLs for Intercepted Ports Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx The output of `telepresence intercept` and `telepresence list` now includes ingress URLs for intercepted service ports. For HTTP header filters, a `curl` example with matching `-H` flags is provided. ```bash telepresence intercept --port -- ``` -------------------------------- ### Helm Installation Error Example Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/troubleshooting.md This error occurs when using an older version of Helm (prior to 3.11.3) with Telepresence. Upgrade Helm to resolve. ```bash Error: INSTALLATION FAILED: template: telepresence-oss/templates/deployment.yaml:172:22: executing "telepresence-oss/templates/deployment.yaml" at : error calling eq: uncomparable type map[string]interface {}: map[capabilities:map[add:[NET_ADMIN]]] ``` -------------------------------- ### Opt-out of Anonymous Usage Data Collection Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/release-notes.mdx To disable anonymous usage reports, set `usage.enabled: false` in `config.yml` or create an `usage-opt-out` marker file. For cluster-wide opt-out during Helm installation, use `--set usage.enabled=false`. ```yaml usage: enabled: false ``` ```bash telepresence helm install --set usage.enabled=false ``` -------------------------------- ### Connect to Cluster and List Services Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/dns.md Connect to your cluster and list available services. This demonstrates how Telepresence makes services discoverable. ```bash $ telepresence connect --namespace default Connecting to traffic manager... Connected to context default, namespace default (https://) $ telepresence list deployment web-app: ready to engage (traffic-agent not yet installed) deployment emoji : ready to engage (traffic-agent not yet installed) deployment web : ready to engage (traffic-agent not yet installed) $ curl web-app:80 Emoji Vote ... ``` -------------------------------- ### Verify SSHFS Installation on macOS Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/troubleshooting.md After installing or updating sshfs on macOS, verify the installation by checking the SSHFS version. This command confirms that sshfs is correctly installed and linked. ```bash sshfs -V ``` -------------------------------- ### Telepresence Config Help Flag Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_config.md Illustrates how to access help for the config command. ```bash telepresence config -h ``` -------------------------------- ### Create OpenShift Cluster Source: https://github.com/telepresenceio/telepresence/blob/release/v2/test-infra/aws-okd/README.md Launches the OpenShift installer to create a new cluster. Use the `--dir` flag to specify the output directory and `--log-level` for verbosity. ```bash ./openshift-install create cluster --dir=./tele-test --log-level=info ``` -------------------------------- ### Telepresence Helm Install Flags Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_helm_install.md This snippet lists the available flags for the 'telepresence helm install' command. These flags allow customization of the installation process, such as network configurations and namespace management. ```bash --allow-conflicting-subnets strings Comma separated list of CIDR that will be allowed to conflict with local subnets ``` ```bash --also-proxy strings Additional comma separated list of CIDR to proxy ``` ```bash --create-namespace create a namespace for the traffic-manager if not present (default true) ``` ```bash --docker Start, or connect to, daemon in a docker container ``` ```bash --expose stringArray Port that a containerized daemon will expose. See docker run -p for more info. Can be repeated ``` ```bash -h, --help help for install ``` ```bash --hostname string Hostname used by a containerized daemon ``` ```bash --manager-namespace string The namespace where the traffic manager is to be found. Overrides any other manager namespace set in config ``` ```bash --mapped-namespaces strings Comma separated list of namespaces considered by DNS resolver and NAT for outbound connections. Defaults to all namespaces ``` ```bash --name string Optional name to use for the connection ``` ```bash -n, --namespace string If present, the namespace scope for this CLI request ``` ```bash --never-proxy strings Comma separated list of CIDR to never proxy ``` ```bash --no-hooks prevent hooks from running during install ``` ```bash --proxy-via strings Use Network Address Translation to create virtual IPs for the given CIDR, and route via WORKLOAD. Must be in the form CIDR=WORKLOAD. CIDR can be substituted for the symblic name "service", "pods", "also", or "all". ``` ```bash --reroute-local strings Reroute port on local host to remote host. Format is <local port>:<host>:<port>[/{tcp,udp}]. <port> can be symbolic when <host> is a service name. ``` ```bash --reroute-remote strings Reroute port on remote host. Format is <host>:<port>:<new port>[/{tcp,udp}]. <port> can be symbolic when <host> is a service name. ``` ```bash --set stringArray specify a value as a.b=v (can specify multiple or separate values with commas: a.b=v1,a.c=v2) ``` ```bash --set-file stringArray set values from respective files specified via the command line (can specify multiple or separate values with commas: key1=path1,key2=path2) ``` ```bash --set-json stringArray set JSON values on the command line (can specify multiple or separate values with commas: a.b=jsonval1,a.c=jsonval2) ``` ```bash --set-string stringArray set STRING values on the command line (can specify multiple or separate values with commas: a.b=val1,a.c=val2) ``` ```bash -f, --values stringArray specify values in a YAML file or a URL (can specify multiple) ``` ```bash --version string the telepresence version if different from the client's version. May be a range (e.g. ^2.21.0) ``` ```bash --vnat strings Use Network Address Translation to create virtual IPs for the given CIDR. CIDR can be substituted for the symblic name "service", "pods", "also", or "all". ``` -------------------------------- ### Upgrade Telepresence on Linux (Manual Binary AMD64) Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/upgrade.md Download and install the Telepresence binary for AMD64 Linux systems. This command downloads the binary and makes it executable. ```shell # 1. Download the latest binary (~95 MB): ### AMD64 sudo curl -fL https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-amd64 -o /usr/local/bin/telepresence # 2. Make the binary executable: sudo chmod a+x /usr/local/bin/telepresence ``` -------------------------------- ### Uninstall Telepresence on macOS Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/client.md Use the uninstall script for package manager installations or Homebrew for Homebrew installations. ```shell sudo telepresence-uninstall ``` ```shell brew uninstall telepresenceio/telepresence/telepresence-oss ``` -------------------------------- ### Upgrade Telepresence on Linux (Manual Binary ARM64) Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/upgrade.md Download and install the Telepresence binary for ARM64 Linux systems. This command downloads the binary and makes it executable. ```shell # 1. Download the latest binary (~95 MB): ### ARM64 sudo curl -fL https://github.com/telepresenceio/telepresence/releases/latest/download/telepresence-linux-arm64 -o /usr/local/bin/telepresence # 2. Make the binary executable: sudo chmod a+x /usr/local/bin/telepresence ``` -------------------------------- ### Prepare and Push Release Tags Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/CONTRIBUTING.md Use these commands to set the Telepresence version and prepare for a new release. This involves updating the repository and pushing new tags. ```console export TELEPRESENCE_VERSION=v2.20.0 make prepare-release git push origin {,rpc/}v2.20.0 release/v2.20.0 ``` ```console export TELEPRESENCE_VERSION=v2.20.1 make prepare-release git push origin {,rpc/}v2.20.1 release/v2.20.1 ``` -------------------------------- ### Build macOS Installer CI Step Source: https://github.com/telepresenceio/telepresence/blob/release/v2/build-aux/INSTALLERS.md This CI step navigates to the installer directory and executes the build script for the macOS package. ```yaml - name: Build macOS Installer run: | cd build-aux/pkg-installer VERSION="${TELEPRESENCE_VERSION#v}" ARCH=${{ matrix.arch }} ./build-pkg.sh ``` -------------------------------- ### Install Latest Stable Traffic Manager Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/manager.md Installs the latest stable version of the Telepresence Traffic Manager into a new 'ambassador' namespace. ```bash helm install --create-namespace --namespace ambassador traffic-manager oci://ghcr.io/telepresenceio/telepresence-oss ``` -------------------------------- ### Telepresence Compose Start Flags Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_compose_start.md Flags specific to the 'start' subcommand within 'telepresence compose'. These control how services are initiated and managed. ```bash telepresence compose start --env-file stringArray -f, --file stringArray --profile stringArray --project-directory string --project-name string --wait --wait-timeout int ``` -------------------------------- ### Telepresence CLI Help Flag Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/reference/cli/telepresence_compose_version.md Standard help flag for the version command. ```bash -h, --help help for version ``` -------------------------------- ### Enable Daemon Profiling Source: https://github.com/telepresenceio/telepresence/blob/release/v2/CLAUDE.md Enable pprof profiling for daemons by connecting with specified profiling ports and then browsing the provided localhost URLs. Ensure Telepresence is quit first. ```bash telepresence quit -s telepresence connect --userd-profiling-port 6060 --rootd-profiling-port 6061 # Then browse http://localhost:6060/debug/pprof/ ``` -------------------------------- ### Install Traffic Manager with Specific Namespaces Source: https://github.com/telepresenceio/telepresence/blob/release/v2/docs/install/manager.md Installs a Traffic Manager to manage the 'dev' and 'staging' namespaces. This command is used to demonstrate namespace collision detection. ```bash telepresence helm install --namespace dev --set 'namespaces={dev,staging}' ```