<p>I have 4 microservices running on my laptop listening at various ports. Can I use Istio to create a service mesh on my laptop so the services can communicate with each other through Istio? All the links on google about Istio include kubernetes but I want to run Istio without Kubernetes. Thanks for reading.</p>

<p>In practice, not really as of this writing, since pretty much all the Istio runbooks and guides are available for Kubernetes.</p>

<p>In theory, yes. Istio components are designed to be <a href="https://istio.io/docs/concepts/what-is-istio/#security" rel="noreferrer">'platform independent'</a>. Quote from the docs:</p>

<blockquote>
  <p>While Istio is platform independent, using it with Kubernetes (or infrastructure) network policies, the benefits are even greater, including the ability to secure pod-to-pod or service-to-service communication at the network and application layers.</p>
</blockquote>

<p>But unless you know really well the details of each of the components: <a href="https://www.envoyproxy.io/docs/envoy/latest/" rel="noreferrer">Envoy</a>, <a href="https://istio.io/docs/concepts/what-is-istio/#mixer" rel="noreferrer">Mixer</a>, <a href="https://istio.io/docs/concepts/what-is-istio/#pilot" rel="noreferrer">Pilot</a>, <a href="https://istio.io/docs/concepts/what-is-istio/#citadel" rel="noreferrer">Citadel</a>, and <a href="https://istio.io/docs/concepts/what-is-istio/#galley" rel="noreferrer">Galley</a> and you are willing to spend a lot of time it becomes not practically feasible to get it running outside of Kubernetes.</p>

<p>If you want to use something less tied to Kubernetes you can take a look at <a href="https://www.consul.io/" rel="noreferrer">Consul</a>, although it doesn't have all the functionality Istio has, it has overlap with some of its features.</p>
