LogoLogo
Bonsai (0.13) DocsGitHubDiscord CommunityGarden Enterprise
Bonsai (0.13)
Bonsai (0.13)
  • Welcome to Garden!
  • 🌸Overview
    • How Garden Works
    • Core Concepts
    • Adopting Garden
    • Garden vs Other Tools
  • 🌳Use Cases
    • Isolated On-Demand Preview Environments
    • Fast, Portable CI Pipelines that Run Anywhere
    • Shift Testing Left
    • Local Development With Remote Clusters
    • Jumpstart your Internal Developer Platform
  • 🌻Getting Started
    • Quickstart Guide
    • Installing Garden
    • Next Steps
  • 💐Tutorials
    • Your First Project
      • 1. Create a Garden Project
      • 2. Pick a Kubernetes Plugin
      • 3. Add Actions
      • 4. Add Tests
      • 5. Code Syncing (Hot Reload)
      • 6. Next Steps
  • 🌿Using Garden
    • About
    • Configuration Overview
    • Projects
    • Dashboard
    • Actions
    • Tests
    • Runs
    • Workflows
    • Variables and templating
    • Config Templates
    • Using the CLI
    • Modules
  • Kubernetes Plugins
    • About
    • Remote K8s Plugin Configuration
      • 1. Create a Cluster
        • AWS
        • GCP
        • Azure
      • 2. Configure Container Registry
        • AWS
        • GCP
        • Azure
        • Docker Hub
      • 3. Set Up Ingress, TLS and DNS
      • 4. Configure the Provider
    • Local K8s Plugin Configuration
      • 1. Install Local Kubernetes
      • 2. Configure the Provider
    • Ephemeral K8s Plugin Configuration
      • 1. Configure the Provider
      • 2. Login to the Garden dashboard
      • 3. Configure Ingress (optional)
      • 4. Retrieve Kubeconfig (optional)
    • Actions
      • Build
        • Container
      • Deploy
        • Kubernetes
        • Helm
        • Container
        • PersistentVolumeClaim
        • ConfigMap
      • Run and Test
        • Kubernetes Pod
        • Helm Pod
        • Kubernetes Exec
        • Container
    • Guides
      • In-Cluster Building
      • Minimal RBAC Configuration for Development Clusters
      • Deploying to Production
      • Using a Registry Mirror
  • ☘️Terraform Plugin
    • About
    • Plugin Configuration
    • Actions
  • 🌹Pulumi Plugin
    • About
    • Plugin Configuration
    • Actions
  • 🌼Other Plugins
    • Container
    • Exec (local scripts)
  • 🌷Guides
    • Migrating to Bonsai
    • Migrating from Docker Compose to Garden
    • Deprecations and updating to Cedar
    • Code Synchronization
    • Connecting a local application to a Kubernetes cluster (Local Mode)
    • Environments and namespaces
    • Using Garden in CircleCI
  • 🪷Advanced
    • Using Remote Sources
    • Custom Commands
  • 🎋Reference
    • Providers
      • conftest-container
      • conftest-kubernetes
      • conftest
      • container
      • ephemeral-kubernetes
      • exec
      • hadolint
      • jib
      • kubernetes
      • local-kubernetes
      • octant
      • otel-collector
      • pulumi
      • terraform
    • Action Types
      • Build
        • container Build
        • exec Build
        • jib-container Build
      • Deploy
        • configmap Deploy
        • container Deploy
        • exec Deploy
        • helm Deploy
        • kubernetes Deploy
        • persistentvolumeclaim Deploy
        • pulumi Deploy
        • terraform Deploy
      • Run
        • container Run
        • exec Run
        • helm-pod Run
        • kubernetes-exec Run
        • kubernetes-pod Run
      • Test
        • conftest-helm Test
        • conftest Test
        • container Test
        • exec Test
        • hadolint Test
        • helm-pod Test
        • kubernetes-exec Test
        • kubernetes-pod Test
    • Template Strings
      • Project template context
      • Environment template context
      • Provider template context
      • Action (all fields) template context
      • Action spec template context
      • Module template context
      • Remote Source template context
      • Project Output template context
      • Custom Command template context
      • Workflow template context
      • Template Helper Functions
    • Commands
    • Project Configuration
    • ConfigTemplate Reference
    • RenderTemplate Reference
    • Workflow Configuration
    • Garden Containers on Docker Hub
    • Module Template Configuration
    • Module Types
      • configmap
      • conftest
      • container
      • exec
      • hadolint
      • helm
      • jib-container
      • kubernetes
      • persistentvolumeclaim
      • pulumi
      • templated
      • terraform
  • 🌸Misc
    • FAQ
    • Troubleshooting
    • Telemetry
    • New Garden Cloud Version
  • Contributing to Garden
    • Contributor Covenant Code of Conduct
    • Contributing to the Docs
    • Setting up your developer environment
    • Developing Garden
    • Config resolution
    • Graph execution
Powered by GitBook
On this page
  • Requirements
  • macOS
  • Step 1: Install Homebrew
  • Step 2: Install Garden (macOS)
  • Step 3 (optional): Docker and local Kubernetes
  • Windows
  • Linux
  • Step 1: Install core dependencies
  • Step 2: Install Garden
  • Step 3 (optional): Local Kubernetes
  • Using Garden with proxies
  • Updating Garden

Was this helpful?

  1. Getting Started

Installing Garden

PreviousQuickstart GuideNextNext Steps

Last updated 2 months ago

Was this helpful?

This page details the different installation methods for Garden.

Please follow the guide for your operating system:

If you'd like to run Kubernetes locally, please see our for installation and usage information.

If you want to install Garden from source, see the instructions in our .

Requirements

You need the following dependencies on your local machine to use Garden:

  • Git (v2.14 or newer)

  • [Windows only] rsync (v3.1.0 or newer)

And if you'd like to build and run services locally, you need . Garden is committed to supporting . The information on the Kubernetes support and EOL timelines can be found .

macOS

For Mac, we recommend the following steps to install Garden. You can also follow the manual installation steps below if you prefer.

Step 1: Install Homebrew

Step 2: Install Garden (macOS)

Homebrew

brew tap garden-io/garden
brew install garden-cli

To later upgrade to the newest version, simply run brew update and then brew upgrade garden-cli.

Installation script (macOS)

curl -sL https://get.garden.io/install.sh | bash

To later upgrade to the latest version, simply run the script again.

Manual download and install (macOS)

If you prefer, you can perform the installation manually, as follows:

  1. Next create a ~/.garden/bin directory, and extract the archive to that directory. Make sure to include the whole contents of the archive.

  2. Lastly, either add the ~/.garden/bin directory to your PATH, or add a symlink from your /usr/local/bin/garden to the binary at ~/.garden/bin/garden.

Step 3 (optional): Docker and local Kubernetes

To install Docker, Kubernetes and kubectl, we recommend Docker for Mac.

Windows

You can run Garden on Windows 10 or later.

To install the Garden CLI and its dependencies, please use our installation script. To run the script, open PowerShell as an administrator and run:

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://raw.githubusercontent.com/garden-io/garden/main/support/install.ps1'))

The things the script will check for are the following:

  • git and rsync . The script will install or upgrade those via Chocolatey.

To later upgrade to the newest version, simply re-run the above script.

We also recommend adding an exclusion folder for the .garden directory in your repository root to Windows Defender:

Add-MpPreference -ExclusionPath "C:\Path\To\Your\Repo\.garden"

This will significantly speed up the first Garden build of large projects on Windows machines.

Note that you must run Powershell with elevated permissions when you execute this command.

Linux

Step 1: Install core dependencies

Use your preferred method or package manager to install git and rsync. On Ubuntu, that's sudo apt install git rsync, on Alpine apk add --no-cache git rsync

The Alpine linux distribution also requires gcc to be installed: apk add --no-cache gcc.

Step 2: Install Garden

Installation script (Linux)

You can use our installation script to install Garden automatically:

curl -sL https://get.garden.io/install.sh | bash

To later upgrade to the latest version, simply run the script again.

Manual download and install (Linux)

If you prefer, you can perform the installation manually, as follows:

  1. Next create a ~/.garden/bin directory, and extract the archive to that directory. Make sure to include the whole contents of the archive.

  2. Lastly, either add the ~/.garden/bin directory to your PATH, or add a symlink from your /usr/local/bin/garden to the binary at ~/.garden/bin/garden.

Step 3 (optional): Local Kubernetes

Using Garden with proxies

If you're running Garden behind a firewall, you may need to use a proxy to route external requests. To do this, you need to set the HTTP_PROXY, HTTPS_PROXY and NO_PROXY environment variables. For example:

export HTTP_PROXY=http://localhost:9999               # <- Replace with your proxy address.
export HTTPS_PROXY=$HTTP_PROXY                        # <- Replace if you use a separate proxy for HTTPS.
export NO_PROXY=local.demo.garden,localhost,127.0.0.1  # <- This is important! See below.

The NO_PROXY variable should include any other hostnames you might use for local development, since you likely don't want to route local traffic through the proxy.

Updating Garden

Once you've installed Garden, you can update it with the Garden self-update command like so:

garden self-update

To install Garden at a specific version, say 0.13.22, you can run:

garden self-update 0.13.22

To install the latest edge release of Garden you can run:

garden self-update edge-bonsai

You can learn more about the different options by running:

garden self-update --help

If you haven't already set up Homebrew, please follow .

You can easily install Garden using or using our installation script. You may also manually download Garden from the on GitHub.

First make sure the listed above are installed. Then run our automated installation script:

Make sure the listed above are installed.

Visit the Garden on GitHub and download the macOS archive (under Assets).

Please refer to their for how to download and install it (which is a pretty simple process).

If you'd like to use a local Kubernetes cluster, please refer to the for further information. For remote clusters, take a look at the .

Note: Building docker images generally requires installing Docker Desktop. Please refer to .

The package manager. The script installs it automatically if necessary.

Visit the Garden on GitHub and download the linux archive (under Assets).

If you'd like to use a local Kubernetes cluster, please refer to the for installation and usage information.

🌻
their installation instructions
Homebrew
releases page
releases page
installation guide
Local Kubernetes guide
Remote Kubernetes guide
the Docker Desktop documentation for its requirements
Chocolatey
releases page
local Kubernetes guide
local Kubernetes guide
contributor guide
a local installation of Kubernetes
the latest officially supported versions
here
macOS
Windows
Linux
requirements
requirements