Overview
To set up and run Meshery on Linux or macOS, install mesheryctl, Meshery’s command line interface. You use it to install, manage, and operate one or more Meshery deployments. Install mesheryctl with Homebrew or Bash, or download it directly from the latest release.
Brew
Prerequisites
You need Homebrew installed on your Linux or macOS system.
Install mesheryctl using Brew
To install mesheryctl with Homebrew, run:
$ brew install mesheryctl
You’re ready to run Meshery. To start it on Kubernetes, run:
$ mesheryctl system start
To run Meshery on Docker instead, run:
$ mesheryctl system start -p docker
To customize the callback URL that your Provider redirects to after sign-in, set MESHERY_SERVER_CALLBACK_URL when you start Meshery:
$ MESHERY_SERVER_CALLBACK_URL=https://custom-host mesheryctl system start
On Kubernetes, mesheryctl uses the current context of your kubeconfig (~/.kube/config by default). To confirm that it points at the cluster you want Meshery to use, run kubectl config get-contexts.
If your kubeconfig has several contexts, switch to the one you want with kubectl config use-context <context-to-use>.
Upgrade mesheryctl using Brew
To upgrade mesheryctl, run:
$ brew upgrade mesheryctl
Bash
To install or upgrade mesheryctl with Bash, run one of the following commands.
Option 1: Only install mesheryctl binary
$ curl -L https://meshery.io/install | DEPLOY_MESHERY=false bash -
Option 2: Install mesheryctl binary and deploy Meshery on Docker
$ curl -L https://meshery.io/install | PLATFORM=docker bash -
Option 3: Install mesheryctl binary and deploy Meshery on Kubernetes
$ curl -L https://meshery.io/install | PLATFORM=kubernetes bash -
Option 4: Install mesheryctl binary and Meshery adapter(s)
Install the mesheryctl binary and deploy Meshery together with one or more adapters. Separate multiple adapters with spaces, for example ADAPTERS="istio linkerd". mesheryctl can deploy the consul, istio, linkerd, nsm, kuma, traefik, and cilium adapters. The script also accepts osm, nighthawk, nginx, tanzu, and app, but mesheryctl has no deployment definition for those adapters, so mesheryctl system start rejects them. The script ignores any other value.
$ curl -L https://meshery.io/install | ADAPTERS=consul PLATFORM=kubernetes bash -
Start Meshery
If you installed only the binary (Option 1), start Meshery on Kubernetes with mesheryctl:
mesheryctl system start
To run Meshery on Docker instead, run:
mesheryctl system start -p docker