website: intro section
This commit is contained in:
parent
7f3941fa96
commit
4b224d7477
|
@ -0,0 +1,29 @@
|
|||
---
|
||||
layout: "intro"
|
||||
page_title: "Introduction"
|
||||
prev_url: "#"
|
||||
next_url: "/intro/why.html"
|
||||
next_title: "Why Use Packer?"
|
||||
---
|
||||
|
||||
# Introduction to Packer
|
||||
|
||||
Welcome to the world of Packer! This introduction guide will show you what
|
||||
packer is, explain why it exists, the benefits it has to offer, and how
|
||||
you can get started with it. If you're already familiar with Packer, the
|
||||
[documentation](/docs) provides more of a reference for all available features.
|
||||
|
||||
## What is Packer?
|
||||
|
||||
Packer is a tool for creating identical machine images for multiple platforms
|
||||
from a single source configuration. Packer is lightweight, runs on every major
|
||||
operating system, and is highly performant, creating machine images for
|
||||
multiple platforms in parallel. Packer does not replace configuration management
|
||||
like Chef or Puppet. In fact, when building images, Packer is able to use tools
|
||||
like Chef or Puppet to install software onto the image.
|
||||
|
||||
A _machine image_ is a single static unit that contains a pre-configured operating
|
||||
system and installed software which is used to quickly create new running machines.
|
||||
Machine image formats change for each platform. Some examples include
|
||||
[AMIs](http://en.wikipedia.org/wiki/Amazon_Machine_Image) for EC2,
|
||||
VMDK/VMX files for VMware, OVF exports for VirtualBox, etc.
|
|
@ -0,0 +1,51 @@
|
|||
---
|
||||
layout: "intro"
|
||||
page_title: "Use Cases"
|
||||
prev_url: "/intro/why.html"
|
||||
next_url: "/intro/getting-started/setup.html"
|
||||
next_title: "Getting Started: Install Packer"
|
||||
---
|
||||
|
||||
# Use Cases
|
||||
|
||||
By now you should know what Packer does and what the benefits of image
|
||||
creation are. In this section, we'll enumerate _some_ of the use cases
|
||||
for Packer. Note that this is not an exhaustive list by any means. There are
|
||||
definitely use cases for Packer not listed here. This list is just meant
|
||||
to give you an idea of how Packer may improve your processes.
|
||||
|
||||
### Continuous Delivery
|
||||
|
||||
Packer is lightweight, portable, and command-line driven. This makes it the
|
||||
perfect tool to put in the middle of your continuous delivery pipeline. Packer
|
||||
can be used to generate new machine images for multiple platforms on every
|
||||
change to Chef/Puppet.
|
||||
|
||||
As part of this pipeline, the newly created images can then be launched and
|
||||
tested, verifying the infrastructure changes work. If the tests pass, you can
|
||||
be confident that that image will work when deployed. This brings a new level
|
||||
of stability and testability to infrastructure changes.
|
||||
|
||||
### Dev/Prod Parity
|
||||
|
||||
Packer helps [keep development, staging, and production as similar as possible](http://www.12factor.net/dev-prod-parity).
|
||||
Packer can be used to generate images for multiple platforms at the same time.
|
||||
So if you use AWS for production and VMware (perhaps with [Vagrant](http://www.vagrantup.com))
|
||||
for development, you can generate both an AMI and a VMware machine using
|
||||
Packer at the same time from the same template.
|
||||
|
||||
Mix this in with the continous delivery use case above, and you have a pretty
|
||||
slick system for consistent work environments from development all the
|
||||
way through to production.
|
||||
|
||||
### Appliance/Demo Creation
|
||||
|
||||
Since Packer creates consistent images for multiple platforms in parallel,
|
||||
it is perfect for creating [appliances](http://en.wikipedia.org/wiki/Software_appliance)
|
||||
and disposable product demos. As your software changes, you can automatically
|
||||
create applicances with the software pre-installed. Potential users can then
|
||||
get started with your software by deploying it to the environment of their
|
||||
choice.
|
||||
|
||||
Packaging up software with complex requirements has never been so easy.
|
||||
Or enjoyable, if you ask me.
|
|
@ -0,0 +1,51 @@
|
|||
---
|
||||
layout: "intro"
|
||||
page_title: "Why Use Packer?"
|
||||
prev_url: "/intro/index.html"
|
||||
next_url: "/intro/use-cases.html"
|
||||
next_title: "Packer Use Cases"
|
||||
---
|
||||
|
||||
# Why Use Packer?
|
||||
|
||||
Pre-baked machine images have a lot of advantages, but most have been unable
|
||||
to benefit from them because images have been too tedious to create and manage.
|
||||
There were ether no existing tools to automate the creation of machine images or
|
||||
they had too high of a learning curve. The result is that, prior to Packer,
|
||||
creating machine images threatened the agility of operations teams, and therefore
|
||||
aren't used, despite the massive benefits.
|
||||
|
||||
Packer changes all of this. Packer is easy to use and automates the creation
|
||||
of any type of machine image. It embraces modern configuration management by
|
||||
encouraging you to use a framework such as Chef or Puppet to install and
|
||||
configure the software within your Packer-made images.
|
||||
|
||||
In other words: Packer brings pre-baked images into the modern age, unlocking
|
||||
untapped potential and opening new opportunities.
|
||||
|
||||
## Advantages of Using Packer
|
||||
|
||||
***Super fast infrastructure deployment***. Packer images allow you to launch
|
||||
completely provisioned and configured machines in seconds, rather than
|
||||
several minutes or hours. This benefits not only production, but development as well,
|
||||
since development virtual machines can also be launched in seconds, without waiting
|
||||
for a typically much longer provisioning time.
|
||||
|
||||
***Multi-provider portability***. Because Packer creates identical images for
|
||||
multiple platforms, you can run production in AWS, staging/QA in a private
|
||||
cloud like OpenStack, and development in desktop virtualization solutions
|
||||
such as VMware or VirtualBox. Each environment is running an identical
|
||||
machine image, giving ultimate portability.
|
||||
|
||||
***Improved stability***. Packer installs and configures all the software for
|
||||
a machine at the time the image is built. If there are bugs in these scripts,
|
||||
they'll be caught early, rather than several minutes after a machine is launched.
|
||||
|
||||
***Greater testability***. After a machine image is built, that machine image
|
||||
can be quickly launched and smoke tested to verify that things appear to be
|
||||
working. If they are, you can be confident that any other machines launched
|
||||
from that image will function properly.
|
||||
|
||||
Packer makes it extremely easy to take advantage of all these benefits.
|
||||
|
||||
What are you waiting for? Let's get started!
|
|
@ -1,6 +1,5 @@
|
|||
<% wrap_layout :layout do %>
|
||||
<div class="docs-wrapper">
|
||||
<div class="sidebar dark-background hidden-phone">
|
||||
<% wrap_layout :inner do %>
|
||||
<% content_for :sidebar do %>
|
||||
<h2>Docs</h2>
|
||||
|
||||
<ul>
|
||||
|
@ -55,17 +54,6 @@
|
|||
<li><a href="/docs/extend/post-processor.html">Custom Post-Processor</a></li>
|
||||
<li><a href="/docs/extend/provisioner.html">Custom Provisioner</a></li>
|
||||
</ul>
|
||||
|
||||
<!-- trick it into having a full-height sidebar regardless of content height -->
|
||||
<div class="sidebar-background"></div>
|
||||
</div>
|
||||
|
||||
<div class="docs-body">
|
||||
<div class="docs-content">
|
||||
<%= yield %>
|
||||
</div>
|
||||
|
||||
<div class="docs-background"></div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<%= yield %>
|
||||
<% end %>
|
||||
|
|
|
@ -0,0 +1,29 @@
|
|||
<% wrap_layout :layout do %>
|
||||
<div class="docs-wrapper">
|
||||
<div class="sidebar dark-background">
|
||||
<%= yield_content :sidebar %>
|
||||
|
||||
<div class="sidebar-background"></div>
|
||||
</div>
|
||||
|
||||
<div class="docs-body">
|
||||
<div class="docs-content">
|
||||
<%= yield %>
|
||||
</div>
|
||||
|
||||
<% if current_page.data.next_url %>
|
||||
<div class="pagination">
|
||||
<a class="previous-section" href="<%= current_page.data.prev_url %>"></a>
|
||||
<a class="next-section" href="<%= current_page.data.next_url %>">
|
||||
<h4>
|
||||
<span class="text-green uppercase">next</span>
|
||||
<%= current_page.data.next_title %>
|
||||
</h4>
|
||||
</a>
|
||||
</div>
|
||||
<% end %>
|
||||
|
||||
<div class="docs-background"></div>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
|
@ -0,0 +1,22 @@
|
|||
<% wrap_layout :inner do %>
|
||||
<% content_for :sidebar do %>
|
||||
<h2>Intro</h2>
|
||||
|
||||
<ul>
|
||||
<li><h4>Concepts</h4></li>
|
||||
<li><a href="/intro/index.html">What is Packer?</a></li>
|
||||
<li><a href="/intro/why.html">Why Use Packer?</a></li>
|
||||
<li><a href="/intro/use-cases.html">Use Cases</a></li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li><h4>Getting Started</h4></li>
|
||||
<li><a href="/intro/getting-started/setup.html">Install Packer</a></li>
|
||||
<li><a href="#">Build an Image</a></li>
|
||||
<li><a href="#">Provision</a></li>
|
||||
<li><a href="#">Parallel Builds</a></li>
|
||||
<li><a href="#">Post-Process</a></li>
|
||||
</ul>
|
||||
<% end %>
|
||||
<%= yield %>
|
||||
<% end %>
|
|
@ -1,7 +1,7 @@
|
|||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
<title>Packer</title>
|
||||
<title><%= current_page.data.page_title ? "#{current_page.data.page_title} - " : "" %>Packer</title>
|
||||
<meta name="description" content="Packer is a free and open source tool for creating golden images for multiple platforms from a single source configuration." />
|
||||
|
||||
<!-- HTML5 shiv -->
|
||||
|
@ -33,7 +33,7 @@
|
|||
</a>
|
||||
<a href="/" class="packer-logo pull-left">Packer</a>
|
||||
<ul>
|
||||
<li><a href="#">Intro</a></li>
|
||||
<li><a href="/intro">Intro</a></li>
|
||||
<li><a href="/docs">Documentation</a></li>
|
||||
<li><a href="#">Community</a></li>
|
||||
</ul>
|
||||
|
|
Loading…
Reference in New Issue