In this post, we will look at exposing applications running on localhost through well formed local domains.
The reason that I have been exploring this functionality is because I often have to run many local micro services, and keep forgetting the ports on which they’re configured. Ergo helps solve this problem by routing the request on the custom local development domain (
.dvp in my case) through a proxy.
Installation of Ergo, is pretty simple, as shown in the below commands.
Install Ergo on Mac OSx using the below commands as mentioned here:
brew tap cristianoliveira/tap brew install ergo
In order to use Ergo, you need to first create a configuration file called
Ergo looks for a
.ergo file inside the current directory. It must contain the names and URL of the services following the same format as
url). The main difference is it also considers the specified port.
The below instructions worked on my machine as I had issues with the auto proxy discovery.
First, I need to set up
ergo to use a custom domain called
The command for running Ergo, using
.dvp is shown below.
ergo run -domain .dvp
Adding a service to Ergo⌗
Next, adding a service running on a custom port with a domain.dvp is as follows:
ergo add blog.n0c0de http://localhost:8086
Listing out all the existing domains⌗
Listing out all the existing domains, is shown below:
ergo list -domain .dvp
Open Google Chrome using the Ergo proxy⌗
As mentioned here, Google Chrome can be launched to use Ergo using:
open -a "Google Chrome" --args --proxy-pac-url=http://localhost:2000/proxy.pac
open -a "Google Chrome Canary" --args --proxy-pac-url=http://localhost:2000/proxy.pac
Now just clicking on any of these domains sends you to the right URL. I no longer need to remember the ports on which those micro services are running. Easy peasy. Wonderful application. That makes my job. Much more organised.