packer-cn/website/source/intro/getting-started/setup.html.markdown

87 lines
3.5 KiB
Markdown
Raw Normal View History

2013-06-21 17:50:00 -04:00
---
2015-07-22 22:31:00 -04:00
description: |
Packer must first be installed on the machine you want to run it on. To make
installation easy, Packer is distributed as a binary package for all supported
platforms and architectures. This page will not cover how to compile Packer from
source, as that is covered in the README and is only recommended for advanced
users.
layout: intro
next_title: Build an Image
next_url: '/intro/getting-started/build-image.html'
page_title: Install Packer
prev_url: '/intro/platforms.html'
...
2013-06-21 17:50:00 -04:00
# Install Packer
2015-07-22 22:31:00 -04:00
Packer must first be installed on the machine you want to run it on. To make
installation easy, Packer is distributed as a [binary package](/downloads.html)
for all supported platforms and architectures. This page will not cover how to
compile Packer from source, as that is covered in the
2013-06-21 17:50:00 -04:00
[README](https://github.com/mitchellh/packer/blob/master/README.md) and is only
recommended for advanced users.
## Installing Packer
2015-07-22 22:31:00 -04:00
To install packer, first find the [appropriate package](/downloads.html) for
your system and download it. Packer is packaged as a "zip" file.
2013-06-21 17:50:00 -04:00
Next, unzip the downloaded package into a directory where Packer will be
installed. On Unix systems, `~/packer` or `/usr/local/packer` is generally good,
2015-07-22 22:31:00 -04:00
depending on whether you want to restrict the install to just your user or
install it system-wide. On Windows systems, you can put it wherever you'd like.
2013-06-21 17:50:00 -04:00
After unzipping the package, the directory should contain a set of binary
2015-07-22 22:31:00 -04:00
programs, such as `packer`, `packer-build-amazon-ebs`, etc. The final step to
installation is to make sure the directory you installed Packer to is on the
PATH. See [this
page](http://stackoverflow.com/questions/14637979/how-to-permanently-set-path-on-linux)
for instructions on setting the PATH on Linux and Mac. [This
page](http://stackoverflow.com/questions/1618280/where-can-i-set-path-to-make-exe-on-windows)
2013-06-21 17:50:00 -04:00
contains instructions for setting the PATH on Windows.
## Verifying the Installation
2015-07-22 22:31:00 -04:00
After installing Packer, verify the installation worked by opening a new command
prompt or console, and checking that `packer` is available:
2013-06-21 17:50:00 -04:00
2015-07-22 22:31:00 -04:00
``` {.text}
2013-06-21 17:50:00 -04:00
$ packer
usage: packer [--version] [--help] <command> [<args>]
Available commands are:
build build image(s) from template
fix fixes templates from old versions of packer
inspect see components of a template
push push template files to a Packer build service
validate check that a template is valid
version Prints the Packer version
2013-06-21 17:50:00 -04:00
```
2015-07-22 22:31:00 -04:00
If you get an error that `packer` could not be found, then your PATH environment
variable was not setup properly. Please go back and ensure that your PATH
variable contains the directory which has Packer installed.
2013-06-21 17:50:00 -04:00
Otherwise, Packer is installed and you're ready to go!
## Alternative Installation Methods
2015-07-22 22:31:00 -04:00
While the binary packages is the only official method of installation, there are
alternatives available.
### Homebrew
If you're using OS X and [Homebrew](http://brew.sh), you can install Packer:
$ brew install packer
## Troubleshooting
On some RedHat-based Linux distributions there is another tool named `packer` installed by default. You can check for this using `which -a packer`. If you get an error like this it indicates there is a name conflict.
$ packer
/usr/share/cracklib/pw_dict.pwd: Permission denied
/usr/share/cracklib/pw_dict: Permission denied
To fix this, you can create a symlink to packer that uses a different name like `packer.io`, or invoke the `packer` binary you want using its absolute path, e.g. `/usr/local/packer`.