<p>Using:</p>
<pre><code>kubectl expose deployment &lt;Name-Of-Servce&gt; --name=loadbalancer --port=8080 --target-port=8080 --type=LoadBalancer
</code></pre>
<p>The <code>kubectl get services</code> is showing pending:</p>
<pre><code>loadbalancer                 LoadBalancer   &lt;x.x.x.x&gt;   &lt;pending&gt;     8080:32670/TCP   2m
</code></pre>
<p>Before Docker surported Kubernetes, I could use MiniKube and Helm:</p>
<pre><code>helm install stable/jenkins
kubectl get services // To get the service name
minikube service original-llama-jenkins // &lt;&lt; The service name
</code></pre>
<p>Now that we have Docker for Mac(Edge) supporting Kubernetes, how do you add an <code>EXTERNAL-IP</code>?</p>

<p>Both type LoadBalancer and NodePort work on Docker for Mac Kubernetes. It's a lovely bit of magic, actually. Just hit localhost:[port]. For NodePort, a port is automatically assigned unless specified in the service definition. For type LoadBalancer, it is also specified in the service definition. Note that in using LoadBalancer, the status from <code>kubectl</code> will be shown as <code>&lt;pending&gt;</code> for EXTERNAL-IP but it does work.</p>

<p>This guy notes that it's exposed through vpnkit though I think another source would be helpful:</p>

<p><a href="https://github.com/jnewland/local-dev-with-docker-for-mac-kubernetes" rel="noreferrer">https://github.com/jnewland/local-dev-with-docker-for-mac-kubernetes</a></p>

<p>Edit: updated because Kubernetes is now available in stable versions of DfM.</p>
