mesheryctl is available for macOS, Linux, and Windows. Choose your platform below for installation instructions.
macOS
Using Homebrew (Recommended)
Using Bash Script
curl -L https://meshery.io/install | PLATFORM = darwin bash -
Linux
Using Bash Script
Install
Install to Custom Location
curl -L https://meshery.io/install | PLATFORM = linux bash -
Manual Installation
# Download the binary
wget https://github.com/meshery/meshery/releases/latest/download/mesheryctl_linux_amd64.tar.gz
# Extract
tar -xzf mesheryctl_linux_amd64.tar.gz
# Move to PATH
sudo mv mesheryctl /usr/local/bin/
# Make executable
sudo chmod +x /usr/local/bin/mesheryctl
# Verify installation
mesheryctl version
Windows
Using PowerShell
$WebClient = New-Object System.Net.WebClient
$WebClient .DownloadFile ( "https://github.com/meshery/meshery/releases/latest/download/mesheryctl_windows_amd64.zip" , "mesheryctl.zip" )
Expand-Archive mesheryctl.zip - DestinationPath .
.\ mesheryctl.exe version
Using Scoop
scoop bucket add mesheryctl https: // github.com / meshery / scoop - bucket.git
scoop install mesheryctl
Docker
Run mesheryctl in a Docker container:
docker run --rm -it -v ~/.meshery:/home/meshery layer5/mesheryctl:stable system status
Mount your Meshery config directory (~/.meshery) to persist configuration across container runs.
Building from Source
Prerequisites
Build Instructions
# Clone the repository
git clone https://github.com/meshery/meshery.git
cd meshery/mesheryctl
# Build
make
# The binary will be at ./cmd/mesheryctl/mesheryctl
# Move to PATH
sudo mv cmd/mesheryctl/mesheryctl /usr/local/bin/
# Verify
mesheryctl version
Verify Installation
After installation, verify that mesheryctl is working:
# Check version
mesheryctl version
# View help
mesheryctl --help
# Check system compatibility
mesheryctl system check
Enable Shell Completion
For better developer experience, enable command completion:
# Linux
mesheryctl completion bash | sudo tee /etc/bash_completion.d/mesheryctl
# macOS
mesheryctl completion bash > /usr/local/etc/bash_completion.d/mesheryctl
# Reload shell
source ~/.bashrc
Configuration
On first run, mesheryctl creates a configuration file at ~/.meshery/config.yaml:
# Initialize configuration
mesheryctl system context create local --url http://localhost:9081 --set
Troubleshooting
Command Not Found
If you get “command not found” after installation:
# Check if binary is in PATH
which mesheryctl
# If not, add installation directory to PATH
export PATH = $PATH :/ usr / local / bin
# Make permanent by adding to shell profile
echo 'export PATH=$PATH:/usr/local/bin' >> ~/.bashrc
source ~/.bashrc
Permission Denied
If you get permission errors:
# Make binary executable
chmod +x /usr/local/bin/mesheryctl
# Or use sudo for system-wide installation
sudo chmod +x /usr/local/bin/mesheryctl
macOS Security Warning
On macOS, if you see “mesheryctl cannot be opened because it is from an unidentified developer”:
# Remove quarantine attribute
xattr -d com.apple.quarantine /usr/local/bin/mesheryctl
# Or allow in System Preferences > Security & Privacy
Updating mesheryctl
Homebrew (macOS)
Script (Linux/macOS)
PowerShell (Windows)
Uninstalling
Homebrew
Manual (Linux/macOS)
Windows
brew uninstall mesheryctl
Next Steps
After installation:
Start Meshery - Deploy Meshery locally
Configure Context - Set up your Meshery endpoint
Explore Commands - Learn available commands