The maven fabric8:push goal pushes the docker image generated via mvn docker:build to either the global docker registry or a local docker registry.
When running kubernetes on a number of machines your docker image needs to be in a docker registry so that it can be downloaded and cached on each host.
To push your image you will need to run:
mvn install docker:build docker:push
If you wish to push docker images to a private or public registry you will need to add a section to your ~/.m2/settings.xml file with a dummy login and password where the server id matches the value of $DOCKER_REGISTRY. For example a local boot2docker based registry would look like this:
    <servers>
       <server>
           <id>192.168.59.103:5000</id>
           <username>jolokia</username>
           <password>jolokia</password>
       </server>
        ...
  </servers>
For more details see the docker maven plugin docs
When creating new docker images for use in Kubernetes you probably want to run a local docker registry if you do not intend to reuse the public docker registry.
Make sure you have added this to your ~/.m2/settings.xml file to define the docker.registry value in a profile you can activate by default...
e.g. add this to the <servers> element:
<?xml version="1.0"?>
<settings>
  <profiles>
    <profile>
      <id>docker-host</id>
      <properties>
        <docker.registry>${env.DOCKER_REGISTRY}</docker.registry>
        <docker.url>${env.DOCKER_HOST}</docker.url>
      </properties>
    </profile>
  </profiles>
  ...
  <activeProfiles>
    <activeProfile>docker-host</activeProfile>
  </activeProfiles>
</settings>
See the reference docs for docker:push