diff --git a/docs/source/guides/single-vm.html b/docs/source/guides/single-vm.html
new file mode 100644
index 0000000..2f1990a
--- /dev/null
+++ b/docs/source/guides/single-vm.html
@@ -0,0 +1,137 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>Single Machine Guide - DevStack</title>
+    <meta name="description" content="">
+    <meta name="author" content="">
+
+    <!-- Le HTML5 shim, for IE6-8 support of HTML elements -->
+    <!--[if lt IE 9]>
+      <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script>
+    <![endif]-->
+
+    <!-- Le styles -->
+    <link href="../assets/css/bootstrap.css" rel="stylesheet">
+    <link href="../assets/css/local.css" rel="stylesheet">
+    <style type="text/css">
+      body { padding-top: 60px; }
+      dd { padding: 10px; }
+    </style>
+    
+    <!-- Le javascripts -->
+    <script src="../assets/js/jquery-1.7.1.min.js" type="text/javascript" charset="utf-8"></script>
+    <script src="../assets/js/bootstrap.js" type="text/javascript" charset="utf-8"></script>
+  </head>
+
+  <body>
+
+    <div class="navbar navbar-fixed-top">
+      <div class="navbar-inner">
+        <div class="container">
+          <a class="brand" href="/">DevStack</a>
+          <ul class="nav pull-right">
+            <li><a href="../overview.html">Overview</a></li>
+            <li><a href="../changes.html">Changes</a></li>
+            <li><a href="../faq.html">FAQ</a></li>
+            <li><a href="http://github.com/openstack-dev/devstack">GitHub</a></li>
+            <li><a href="https://review.openstack.org/#/q/status:open+project:openstack-dev/devstack,n,z">Gerrit</a></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+
+    <div class="container">
+      <section id="overview">
+        <h1>Running a Cloud in a VM</h1>
+        <p>Use the cloud to build the cloud! Use your cloud to launch new versions of OpenStack 
+        in about 5 minutes.  When you break it, start over!  The VMs launched in the cloud will 
+        be slow as they are running in QEMU (emulation), but their primary use is testing
+        OpenStack development and operation.  Speed not required.</p>
+      </section>
+
+      <section id="prerequisites">
+        <div class="page-header">
+          <h2>Prerequisites <small>Cloud & Image</small></h2>
+        </div>
+
+        <h3>Virtual Machine</h3>
+        <p>DevStack should run in any virtual machine running a supported Linux release.  It will perform best with 2Gb or more of RAM.</p>
+
+        <h3>OpenStack Deployment &amp; cloud-init</h3>
+        <p>If the cloud service has an image with <code>cloud-init</code> pre-installed, use it.  You can
+        get one from <a href="http://uec-images.ubuntu.com">Ubuntu's Daily Build</a>
+        site if necessary.  This will enable you to launch VMs with userdata that installs 
+        everything at boot time.  The userdata script below will install and run
+        DevStack with a minimal configuration.  The use of <code>cloud-init</code>
+        is outside the scope of this document, refer to <a href"http://cloudinit.readthedocs.org/en/latest/index.html">the
+        <code>cloud-init</code> docs</a> for more information.</p>
+
+        <p>If you are directly using a hypervisor like Xen, kvm or VirtualBox you can manually kick off
+        the script below as a non-root user in a bare-bones server installation.</p>
+      </section>
+
+      <section id="requirements">
+        <div class="page-header">
+          <h2>Installation <small>shake and bake</small></h2>
+        </div>
+
+        <h3>Launching With Cloud-Init</h3>
+        <p>This cloud config grabs the latest version of DevStack via git, creates a minimal 
+        <code>local.conf</code> file and kicks off <code>stack.sh</code>.  It should
+        be passed as the user-data file when booting the VM.</p>
+        <pre>#cloud-config
+
+users:
+  - default
+  - name: stack
+    lock_passwd: False
+    sudo: ["ALL=(ALL) NOPASSWD:ALL\nDefaults:stack !requiretty"]
+    shell: /bin/bash
+
+write_files:
+  - content: |
+        #!/bin/sh
+        DEBIAN_FRONTEND=noninteractive sudo apt-get -qqy update || sudo yum update -qy
+        DEBIAN_FRONTEND=noninteractive sudo apt-get install -qqy git || sudo yum install -qy git
+        sudo chown stack:stack /home/stack
+        cd /home/stack
+        git clone https://github.com/openstack-dev/devstack.git
+        cd devstack
+        echo '[[local|localrc]]' > local.conf
+        echo ADMIN_PASSWORD=password >> local.conf
+        echo MYSQL_PASSWORD=password >> local.conf
+        echo RABBIT_PASSWORD=password >> local.conf
+        echo SERVICE_PASSWORD=password >> local.conf
+        echo SERVICE_TOKEN=tokentoken >> local.conf
+        ./stack.sh
+    path: /home/stack/start.sh
+    permissions: 0755
+
+runcmd:
+  - su -l stack ./start.sh</pre>
+        <p>As DevStack will refuse to run as root, this configures <code>cloud-init</code>
+        to create a non-root user and run the <code>start.sh</code> script as that user.</p>
+
+        <h3>Launching By Hand</h3>
+        <p>Using a hypervisor directly, launch the VM and either manually perform the steps in the 
+        embedded shell script above or copy it into the VM.</p>
+
+        <h3>Using OpenStack</h3>
+        <p>At this point you should be able to access the dashboard.  Launch VMs and if you give them floating IPs access those VMs from other machines on your network.</p>
+
+        <p>One interesting use case is for developers working on a VM on their laptop.  Once
+        <code>stack.sh</code> has completed once, all of the pre-requisite packages are installed
+        in the VM and the source trees checked out.  Setting <code>OFFLINE=True</code> in
+        <code>local.conf</code> enables <code>stack.sh</code> to run multiple times without an Internet
+        connection.  DevStack, making hacking at the lake possible since 2012!</p>
+      </section>
+
+      <footer>
+        <p>&copy; Openstack Foundation 2011-2014 &mdash; An <a href="https://www.openstack.org/">OpenStack</a> <a href="https://wiki.openstack.org/wiki/Programs">program</a></p>
+      </footer>
+
+    </div> <!-- /container -->
+
+  </body>
+</html>
