diff --git a/devenv/README.md b/devenv/README.md
index 406b60e427882b2b132b64927bb138d06172de25..1f6d149f8a6e48a78756fd4164f6d04514abbc0f 100644
--- a/devenv/README.md
+++ b/devenv/README.md
@@ -17,10 +17,15 @@ networking has a configuration similar to:
 Sharing pid and networking namespaces is detailed in the 
 [super privileged containers][] concept.
 
-The Kolla cluster is based on Fedora 21, and makes use of the
-[pkilambi/docker][] [COPR][] repository for Docker packages. This
-is because Kolla requires a newer version of Docker not currently
-packaged in Fedora 21.
+The Kolla cluster is based on Fedora 21, requires the Docker 1.5.0-dev
+[binary][] and runs a newer version of `docker-compose` that includes
+pid: host support. One of the authors of Kolla has a pull request
+outstanding that the docker-compose maintainers have said they
+would merge shortly.
+
+The pull request is:
+
+    https://github.com/docker/compose/pull/1011
 
 These templates are designed to work with the Icehouse or Juno
 versions of Heat. If using Icehouse Heat, this [patch][] is
@@ -29,7 +34,7 @@ required to correct a bug with template validation when using the
 
 [heat]: https://wiki.openstack.org/wiki/Heat
 [kolla]: https://launchpad.net/kolla
-[pkilambi/docker]: https://copr.fedoraproject.org/coprs/pkilambi/docker
+[binary]: https://docs.docker.com/installation/binaries/
 [copr]: https://copr.fedoraproject.org/
 [spec]: https://review.openstack.org/#/c/153798/
 [super privileged containers]: http://sdake.io/2015/01/28/an-atomic-upgrade-process-for-openstack-compute-nodes/
@@ -45,7 +50,7 @@ devenv directory:
 
 The script will create a Fedora 21 image with the required modifications.
 
-Copy the image to your Glance image store:
+Add the image to your Glance image store:
 
     $ glance image-create --name "fedora-21-x86_64" \
     --file /var/lib/libvirt/images/fedora-21-x86_64 \
@@ -62,13 +67,31 @@ local.yaml:
     parameters:
       ssh_key_name: admin-key
       external_network_id: 028d70dd-67b8-4901-8bdd-0c62b06cce2d
+      container_external_network_id: 028d70dd-67b8-4901-8bdd-0c62b06cce2d
+      container_external_subnet_id: 575770dd-6828-1101-34dd-0c62b06fjf8s
       dns_nameserver: 192.168.200.1
 
+The external_network_id is used by Heat to automatically assign
+floating IP's to your Kolla nodes. You can then access your Kolla nodes
+directly using the floating IP. The network ID is derived from the
+`neutron net-list` command.
+
+The container_external_network_id is used by the nova-network container
+within the Kolla node as the FLAT_INTERFACE. The FLAT_INTERFACE tells Nova what
+device to use (i.e. eth1) to pass network traffic between Nova instances
+across Kolla nodes. This network should be seperate from the external_network_id
+above and is derived from the 'neutron net-list' command.
+
+The container_external_subnet_id: is the subnet equivalent to
+container_external_network_id
+
 Review the parameters section of kollacluster.yaml for a full list of
 configuration options. **Note:** You must provide values for:
 
 - `ssh_key_name`
 - `external_network_id`
+- `container_external_network_id`
+- `container_external_subnet_id`
 
 And then create the stack, referencing that environment file:
 
@@ -87,57 +110,67 @@ You can ssh into that server as the `fedora` user:
 
     $ ssh fedora@192.168.200.86
 
-And once logged in you can run Docker commands, etc:
+Once logged into your Kolla node, setup your environment.
+The basic starting environment will be created using `docker-compose`.
+This environment will start up the openstack services listed in the
+compose directory.
+
+To start, setup your environment variables.
+
+    $ cd kolla
+    $ ./tools/genenv
+
+The `genenv` script will create a compose/openstack.env file
+and an openrc file in your current directory. The openstack.env
+file contains all of your initialized environment variables, which
+you can edit for a different setup.
+
+Next, run the start script.
+
+    $ ./tools/start
+
+The `start` script is responsible for starting the containers
+using `docker-compose -f <osp-service-container> up -d`.
 
-    $ sudo docker images
+If you want to start a container set by hand use this template
+
+    $ docker-compose -f glance-api-registry.yml up -d
 
 Debugging
 ==========
+
+All Docker commands should be run from the directory of the Docker binaray,
+by default this is `/`.
+
 A few commands for debugging the system.
 
 ```
-$ sudo docker images
+$ sudo ./docker images
 ```
 Lists all images that have been pulled from the upstream kollaglue repository
 thus far.  This can be run on the node during the `./start` operation to
 check on the download progress.
 
 ```
-$ sudo docker ps -a
+$ sudo ./docker ps -a
 ```
 This will show all processes that docker has started.  Removing the `-a` will
 show only active processes.  This can be run on the node during the `./start`
 operation to check that the containers are orchestrated.
 
 ```
-$ sudo docker logs <containerid>
-```
-This shows the logging output of each service in a container.  The containerid
-can be obtained via the `docker ps` operation.  This can be run on the node
-during the `./start` operation to debug the container.
-
-```
-$ sudo systemctl restart docker
-```
-Restarts the Docker service on the node.
-
+$ sudo ./docker logs <containerid>
 ```
-$ journalctl -f -l -xn -u docker
-```
-This shows log output on the server for the docker daemon and can be filed
-in bug reports in the upstream launchpad tracker.
-
 ```
-$ telnet <NODE_IP> 3306
+$ curl http://<NODE_IP>:3306
 ```
-You can use telnet to test connectivity to a container. This example demonstrates
+You can use curl to test connectivity to a container. This example demonstrates
 the Mariadb service is running on the node.  Output should appear as follows
 
 ```
-$ telnet 10.0.0.4 3306
+$ curl http://10.0.0.4:3306
 Trying 10.0.0.4...
 Connected to 10.0.0.4.
 Escape character is '^]'.
 
-5.5.39-MariaDB-wsrep
 ```
diff --git a/devenv/get-image.sh b/devenv/get-image.sh
index e6c43b97bdd35d067c81183a8c449ec2a4dc42f3..4247be39203ae6ddd6d9bd481f65014d85cf9e01 100755
--- a/devenv/get-image.sh
+++ b/devenv/get-image.sh
@@ -3,26 +3,21 @@
 # This script expects the following to be installed:
 # curl, libguestfs-tools-c
 
+IMAGE_URL=http://archive.fedoraproject.org/pub/fedora/linux/releases/21/Cloud/Images/x86_64
 IMAGE=Fedora-Cloud-Base-20141203-21.x86_64.qcow2
 TARGET_DIR=/var/lib/libvirt/images
 TARGET=fedora-21-x86_64
 
 if ! [ -f "$IMAGE" ]; then
     echo "Downloading $IMAGE"
-    curl -O http://archive.fedoraproject.org/pub/fedora/linux/releases/21/Cloud/Images/x86_64/$IMAGE
+    curl -L -O $IMAGE_URL/$IMAGE
 fi
 
 echo "Copying $IMAGE to $TARGET"
 cp "$IMAGE" $TARGET_DIR/$TARGET
 
-PACKAGES="git,tcpdump"
-
 virt-customize \
     --add $TARGET_DIR/$TARGET \
-    --install $PACKAGES \
-    --update \
-    --install $PACKAGES \
-    --run-command "yum clean all" \
     --run-command "cat > /etc/sysconfig/network-scripts/ifcfg-eth1 <<EOF
 DEVICE=eth1
 BOOTPROTO=none
diff --git a/devenv/kollacluster.yaml b/devenv/kollacluster.yaml
index 0c8c65a95602f7f11b33a1ad7ca42fa93199a63e..bfc7554cd062c41033e32d39ffbed398bb3c95f4 100644
--- a/devenv/kollacluster.yaml
+++ b/devenv/kollacluster.yaml
@@ -15,7 +15,16 @@ parameters:
 
   external_network_id:
     type: string
-    description: uuid of a network to use for floating ip addresses
+    description: uuid of a network to use for aaccessing Kolla hosts by floating ip address
+
+  container_external_network_id:
+    type: string
+    description: uuid of a network to use for container floating ip addresses
+
+  container_external_subnet_id:
+    type: string
+    description: uuid of a subnet to use for container floating ip addresses
+
   #
   # OPTIONAL PARAMETERS
   #
@@ -100,6 +109,8 @@ resources:
           fixed_network_id: {get_resource: fixed_network}
           fixed_subnet_id: {get_resource: fixed_subnet}
           external_network_id: {get_param: external_network_id}
+          container_external_network_id: {get_param: container_external_network_id}
+          container_external_subnet_id: {get_param: container_external_subnet_id}
 outputs:
 
   kolla_node_internal_ip:
diff --git a/devenv/kollanode.yaml b/devenv/kollanode.yaml
index 7d1a7fbcbbac5b97e22c3fa704d57ee5a0934d16..9ab4928e205310fab040e49590c0839ff29c2ef9 100644
--- a/devenv/kollanode.yaml
+++ b/devenv/kollanode.yaml
@@ -25,6 +25,14 @@ parameters:
     type: string
     description: uuid of a network to use for kolla host floating ip addresses
 
+  container_external_network_id:
+    type: string
+    description: uuid of a network to use for container floating ip addresses
+
+  container_external_subnet_id:
+    type: string
+    description: uuid of a subnet to use for container floating ip addresses
+
   # The following are all generated in the parent template.
   fixed_network_id:
     type: string
@@ -136,54 +144,46 @@ resources:
           template: |
             #!/bin/sh
 
-            yum -y upgrade
+            # Latest packages
+            yum clean all
+            yum -y update
 
+            # Remove network manager
             yum -y remove NetworkManager
             chkconfig network on
 
-            # enable dnf command
-            yum -y install ntp dnf dnf-plugins-core
-
-            # Docker packages
-            dnf -y copr enable pkilambi/docker
-            dnf -y install docker
-
-            # Start Docker
-            systemctl enable docker
-            systemctl start docker
+            # Install base packages
+            yum -y install wget ntp git tcpdump python-pip
+
+            # Install Docker binaries
+            # TODO Use pkg when API 1.18 is available
+            wget https://master.dockerproject.com/linux/amd64/docker-1.5.0-dev -O docker
+            chmod +x docker
+            ./docker -d &
+
+            # Install Compose with pid=host support
+            # TODO: Use pkg when github.com/docker/compose/pull/1011 is merged
+            git clone http://github.com/sdake/fig
+            cd fig
+            pip install -e .
+            pip install -U docker-py
+            pip install -e .
+            pip install six==1.7.3
+
+            # Pull the Kolla repo
+            cd /root
+            curl -L -O https://github.com/stackforge/kolla/archive/version-m3.tar.gz
+            tar -xvf version-m3.tar.gz
+            mv kolla-version-m3 kolla
+
+            # Load ebtables kernel module required for networking
+            modprobe ebtables
 
             # Start NTP
             systemctl enable ntpd
             systemctl start ntpd
 
-            # Directory where the fig container reads yaml files
-            mkdir -p /opt/docker-compose
-
-            # Sample yaml file for testing
-            cat << EOF > /opt/docker-compose/docker-compose.yml
-            rabbitmq:
-              image: kollaglue/fedora-rdo-rabbitmq
-              environment:
-                RABBITMQ_NODENAME: rabbit01
-                RABBITMQ_USER: rabbit
-                RABBITMQ_PASS: password
-              net: "host"
-              ports:
-                - "5672:5672"
-                - "15672:15672"
-                - "4369:4369"
-                - "25672:25672"
-              privileged: true
-            EOF
-
-            # Pull the fig image
-            docker pull kollaglue/fedora-rdo-docker-compose
-
-            # Up the RabbitMQ test container-set
-            docker run --privileged -v /opt/docker-compose:/opt/docker-compose \
-            -v /var/run/docker.sock:/var/run/docker.sock \
-            kollaglue/fedora-rdo-docker-compose up -d
-
+            # Send the CFN signal
             cfn-signal -e0 --data 'OK' -r 'Setup complete' '$WAIT_HANDLE'
           params:
             "$WAIT_HANDLE":
@@ -210,9 +210,12 @@ resources:
     type: "OS::Neutron::Port"
     properties:
       network_id:
-        get_param: external_network_id
+        get_param: container_external_network_id
       security_groups:
         - get_resource: secgroup_all_open
+      fixed_ips:
+        - subnet_id:
+            get_param: container_external_subnet_id
 
   kolla_node_floating:
     type: "OS::Neutron::FloatingIP"
diff --git a/devenv/local.yaml.example b/devenv/local.yaml.example
index b642526e26f47d000dadc179e30a8f13903722ff..8f76cd835edd703c0d54f21891e1957672efb130 100644
--- a/devenv/local.yaml.example
+++ b/devenv/local.yaml.example
@@ -1,3 +1,5 @@
 parameters:
   ssh_key_name: <YOUR_NOVA_KEYPAIR>
   external_network_id: <NEUTRON_EXTERNAL_NET_ID>
+  container_external_network_id: <NEUTRON_EXTERNAL_NET_ID2>
+  container_external_subnet_id: <NEUTRON_EXTERNAL_SUBNETNET_ID2>