DEV Community

Cover image for Making Django App Publicly Accessible With Ngrok
Maciej
Maciej

Posted on • Edited on • Originally published at janowski.dev

Making Django App Publicly Accessible With Ngrok

Sometimes when developing our Django application, we need to make it publicly accessible or use https, for example when testing OAuth authentication sometimes https is enforced, or when testing Shopify webhooks (where the request is executed on Shopify server, so we need to make it publicly available), or simply when we want to share it with a friend without deploying it live.

To achieve it We can use ngrok to redirect what you are running on localhost to publicly available ngrok URL. Let’s get started.

Installing ngrok

on mac, we can install it simply with brew.

brew cask install ngrok
Enter fullscreen mode Exit fullscreen mode

For windows we can download it from here.

Running ngrok

o start ngrok we simply type “ngrok http [port]“, in our case we use port 8000, because it’s the default Django development server port.

ngrok http 8000
Enter fullscreen mode Exit fullscreen mode

you will see the ngrok screen, and your ngrok URL, in my case it’s http://5cedabab7730.ngrok.io, you also have https connection available.

ngrok running

Now go to settings.py and add 5cedabab7730.ngrok.io to ALLOWED_HOSTS. Run your Django development server.

python manage.py runserver
Enter fullscreen mode Exit fullscreen mode

Now your Django App is available to the world under https://5cedabab7730.ngrok.io you can test external APIs, authentications, or share what you working on with your friends.

Top comments (0)