| --- |
| layout: docs |
| page_title: Install Vault |
| description: |- |
| Download a precompiled binary, compile from source, or use a package. |
| --- |
| |
| # Installing Vault |
| |
| There are several options to install Vault: |
| |
| 1. Install from a [Package Manager](#package-manager). |
| |
| 1. Use a [precompiled binary](#precompiled-binaries). |
| |
| 1. Install [from source](#compiling-from-source). |
| |
| 1. [Helm for Kubernetes](/vault/docs/platform/k8s/helm) |
| |
| |
| ## Package manager |
| |
| HashiCorp manages packages for Ubuntu, Debian, Fedora, RHEL, Amazon |
| Linux, and other distributions. Follow the instructions at [HashiCorp |
| Tutorials][learn-vault-install] to add our PGP key, add a repository, and |
| install. |
| |
| ## Precompiled binaries |
| |
| To install the precompiled binary, [download](/vault/downloads) the applicable |
| package for your system. Vault is packaged as a zip file. |
| |
| Once the zip is downloaded, unzip the file into your designated directory. The `vault` binary |
| inside is all that is necessary to run Vault (or `vault.exe` for Windows). No |
| additional files are required to run Vault. |
| |
| Copy the binary to your system. If you intend to access it from the |
| command-line, ensure that you place the binary somewhere on your `PATH`. |
| |
| Refer to the [HashiCorp Tutorials][learn-vault-dev-server] to start a server, `put` |
| your first secret, and use other features of Vault. |
| |
| ## Compiling from source |
| |
| To compile from source, you will need [Go](https://golang.org) installed and |
| properly configured (including a `GOPATH` environment variable set), as well as |
| a copy of [`git`](https://www.git-scm.com/) in your `PATH`. |
| |
| Clone the Vault repository from GitHub into your `GOPATH`: |
| |
| ```shell-session |
| $ mkdir -p $GOPATH/src/github.com/hashicorp && cd $_ |
| $ git clone https://github.com/hashicorp/vault.git |
| $ cd vault |
| ``` |
| |
| Bootstrap the project. This will download and compile libraries and tools needed |
| to compile Vault: |
| |
| ```shell-session |
| $ make bootstrap |
| ``` |
| |
| Build Vault for your current system and put the binary in `./bin/` (relative to |
| the git checkout). The `make dev` target is just a shortcut that builds `vault` |
| for only your local build environment (no cross-compiled targets). |
| |
| ```shell-session |
| $ make dev |
| ``` |
| |
| ## Verifying the installation |
| |
| To verify Vault is installed, run `vault -h` on your system. You should |
| see the help output. If you are executing it from the command line, ensure it is |
| on your `PATH` to avoid receiving an error that Vault is not found. |
| |
| ```shell-session |
| $ vault -h |
| ``` |
| |
| ## Tutorial |
| |
| Following tutorials provide some guidance on production cluster deployment: |
| |
| - [Day One Preperation](/vault/tutorials/day-one-raft) |
| - [Recommended Patterns](/vault/tutorials/recommended-patterns) |
| |
| |
| [learn-vault-install]: /vault/tutorials/getting-started/getting-started-install |
| [learn-vault-dev-server]: /vault/tutorials/getting-started/getting-started-dev-server |