diff --git a/Dockerfile b/Dockerfile
index ab65e0e..0b930d4 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -28,7 +28,7 @@
 RUN curl -sL http://archive.apache.org/dist/zookeeper/zookeeper-$ZOOKEEPER_VERSION/zookeeper-$ZOOKEEPER_VERSION.tar.gz | tar -xzC /tmp
 RUN curl -sL http://archive.apache.org/dist/accumulo/$ACCUMULO_VERSION/accumulo-$ACCUMULO_VERSION-bin.tar.gz | tar -xzC /tmp
 #RUN curl -sL http://archive.apache.org/dist/fluo/fluo/$FLUO_VERSION/fluo-$FLUO_VERSION-bin.tar.gz | tar -xzC /tmp
-# Comment out line above and remove line below in 1.2.0 is released
+# Comment out line above and remove line below when 1.2.0 is released
 ADD ./fluo-$FLUO_VERSION-bin.tar.gz /tmp/
 
 RUN mv /tmp/hadoop-$HADOOP_VERSION /opt/hadoop
diff --git a/README.md b/README.md
index 73defcf..960c1f2 100644
--- a/README.md
+++ b/README.md
@@ -1,26 +1,36 @@
 # Apache Fluo Docker Image
 
-**This is currently a work in progress that depends on unreleased features of Fluo and will not be ready for use until after Fluo 1.2.0 is released.**  Sometime after Fluo 1.2.0 is released this project will make its first release.  The `mikewalch/fluo` DockerHub image is only for pre-release testing and is not a release.  Eventually this will project will create a `apache/fluo` image at DockerHub.
+**This is currently a work in progress that depends on unreleased features of Fluo and will not be ready for use until after Fluo 1.2.0 is released.**  Sometime after Fluo 1.2.0 is released this project will make its first release. Eventually, this will project will create a `apache/fluo` image at DockerHub. Until then, you will need to build your own image.
+
+This project creates the official [Apache Fluo][Fluo] docker image.
+
+## Getting Started
+
+* [Documentation][docs] for running a Fluo application in Docker
 
 ## Obtain the Docker image
 
 To obtain the docker image created by this project, you can either pull it from DockerHub at
-`mikewalch/fluo` or build it yourself. To pull the image from DockerHub, run the command below:
+`apache/fluo` or build it yourself. To pull the image from DockerHub, run the command below:
 
-    sudo docker pull mikewalch/fluo
+    docker pull apache/fluo
 
 While it is easier to pull from DockerHub, the image will default to the software versions below:
 
-| Software    | Version        |
-|-------------|----------------|
-| [Fluo]      | 1.2.0-SNAPSHOT |
-| [Accumulo]  | 1.8.1          |
-| [Hadoop]    | 2.7.3          |
-| [Zookeeper] | 3.4.9          |
+| Software    | Version |
+|-------------|---------|
+| [Fluo]      | 1.2.0   |
+| [Accumulo]  | 1.8.1   |
+| [Hadoop]    | 2.7.3   |
+| [Zookeeper] | 3.4.9   |
 
 If these versions do not match what is running on your cluster, you should consider building
-your own image with matching versions. However, Fluo must be 1.2+. Below are instructions for
-building an image:
+your own image with matching versions. However, Fluo must be 1.2+.
+
+<!-- This section name should be stable as it's linked to from the web docs -->
+## Build the Docker image
+
+Below are instructions for building an image:
 
 1. Clone the Fluo docker repo
 
@@ -43,86 +53,12 @@
 
         docker build --build-arg ZOOKEEPER_VERSION=3.4.8 --build-arg ACCUMULO_VERSION=1.7.3 --build-arg HADOOP_VERSION=2.7.0 -t fluo .
 
-## Image basics
+## Next steps
 
-The entrypoint for the Fluo docker image is the `fluo` script. While the primary use
-case for this image is to start an oracle or worker, you can run other commands in the
-`fluo` script to test out the image:
-
-```bash
-# No arguments prints Fluo command usage
-docker run mikewalch/fluo
-# Print Fluo version
-docker run mikewalch/fluo version
-# Print Fluo classpath
-docker run mikewalch/fluo classpath
-```
-
-# Run Fluo Applications using Docker
-
-Before starting a Fluo oracle and worker using the Fluo Docker image, [initialize your Fluo application][application]. 
-Next, choose a method below to run the oracle and worker(s) of your Fluo application. In the examples below, the Fluo
-application is named `myapp` and was initialized using a Zookeeper node on `zkhost`.
-
-## Docker engine
-
-Use the `docker` command to start local docker containers.
-
-1. Start a Fluo oracle
-
-        docker run -d --network="host" mikewalch/fluo oracle -a myapp -o fluo.connection.zookeepers=zkhost/fluo
-
-2. Start Fluo worker(s). Execute this command multiple times to start multiple workers.
-
-        docker run -d --network="host" mikewalch/fluo worker -a myapp -o fluo.connection.zookeepers=zkhost/fluo
-
-## Marathon
-
-Using the [Marathon] UI, you can create applications using JSON configuration.
-
-The JSON below can be used to start a Fluo oracle.
-
-```json
-{
-  "id": "myapp-fluo-oracle",
-  "cmd": "fluo oracle -a myapp -o fluo.connection.zookeepers=zkhost/fluo",
-  "cpus": 1,
-  "mem": 256,
-  "disk": 0,
-  "instances": 1,
-  "container": {
-    "docker": {
-      "image": "mikewalch/fluo",
-      "network": "HOST"
-    },
-    "type": "DOCKER"
-  }
-}
-```
-
-The JSON below can be used to start Fluo worker(s). Modify instances to start multiple workers.
-
-```json
-{
-  "id": "myapp-fluo-worker",
-  "cmd": "fluo worker -a myapp -o fluo.connection.zookeepers=zkhost/fluo",
-  "cpus": 1,
-  "mem": 512,
-  "disk": 0,
-  "instances": 1,
-  "container": {
-    "docker": {
-      "image": "mikewalch/fluo",
-      "network": "HOST"
-    },
-    "type": "DOCKER"
-  }
-}
-```
+Read the [documentation][docs] for instructions on how run Fluo using docker.
 
 [Fluo]: https://fluo.apache.org/
 [Accumulo]: https://accumulo.apache.org/
 [Hadoop]: https://hadoop.apache.org/
 [Zookeeper]: https://zookeeper.apache.org/
-[application]: https://github.com/apache/fluo/blob/master/docs/applications.md
-[Marathon]: https://mesosphere.github.io/marathon/
+[docs]: https://fluo.apache.org/docs/fluo/1.2/administration/run-fluo-in-docker
