diff --git a/docs/source/eucarc.html b/docs/source/eucarc.html
new file mode 100644
index 0000000..df52972
--- /dev/null
+++ b/docs/source/eucarc.html
@@ -0,0 +1,94 @@
+<!DOCTYPE html>
+<html lang="en">
+  <head>
+    <meta charset="utf-8">
+    <title>DevStack - eucarc</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 class="span12">
+        <div class="page-header">
+          <h2>eucarc <small>EC2 settings</small></h2>
+          <p><code>eucarc</code> creates EC2 credentials for the current user as
+            defined by <code>OS_TENANT_NAME:OS_USERNAME</code>.
+            <code>eucarc</code> sources <code>openrc</code> at the beginning
+            (which in turn sources <code>stackrc</code> and <code>localrc</code>)
+            in order to set credentials to create EC2 credentials in Keystone.
+        </div>
+        <dl>
+
+          <dt>EC2_URL</dt>
+          <dd>Set the EC2 url for euca2ools.  The endpoint is extracted from the
+            service catalog for <code>OS_TENANT_NAME:OS_USERNAME</code>.
+            <pre>EC2_URL=$(keystone catalog --service ec2 | awk '/ publicURL / { print $4 }')</pre></dd>
+
+          <dt>S3_URL</dt>
+          <dd>Set the S3 endpoint for euca2ools.  The endpoint is extracted from the
+            service catalog for <code>OS_TENANT_NAME:OS_USERNAME</code>.
+            <pre>export S3_URL=$(keystone catalog --service s3 | awk '/ publicURL / { print $4 }')</pre></dd>
+
+          <dt>EC2_ACCESS_KEY, EC2_SECRET_KEY</dt>
+          <dd>Create EC2 credentials for the current tenant:user in Keystone.
+            <pre>CREDS=$(keystone ec2-credentials-create)
+export EC2_ACCESS_KEY=$(echo "$CREDS" | awk '/ access / { print $4 }')
+export EC2_SECRET_KEY=$(echo "$CREDS" | awk '/ secret / { print $4 }')</pre></dd>
+
+          <dt>Certificates for Bundling</dt>
+          <dd>Euca2ools requires certificate files to enable bundle uploading.
+            The exercise script <code>exercises/bundle.sh</code> demonstrated
+            retrieving certificates using the Nova CLI.
+            <pre>EC2_PRIVATE_KEY=pk.pem
+EC2_CERT=cert.pem
+NOVA_CERT=cacert.pem
+EUCALYPTUS_CERT=${NOVA_CERT}</pre></dd>
+
+        </dl>
+      </section
+
+      <footer>
+        <p>&copy; Openstack Foundation 2011-2013 &mdash; An
+        <a href="https://wiki.openstack.org/wiki/Programs">OpenStack program</a>
+        created by <a href="http://www.rackspace.com/cloud/private_edition/">Rackspace Cloud Builders</a></p>
+      </footer>
+
+    </div> <!-- /container -->
+
+  </body>
+</html>
