DEV Community

Cover image for Elastic D&D - Update 7 - Port Forwarding
Joe
Joe

Posted on • Updated on

Elastic D&D - Update 7 - Port Forwarding

Last week we talked about moving to a docker implementation. If you missed it, you can check that out here!

Port Forwarding

Port Forwarding is the process of allowing remote devices to connect to local devices by means of network redirection via a router or firewall.

As far as for Elastic D&D, this process is necessary to expose both Kibana and Streamlit to the internet so my group members in other countries can still use the application. In my use-case, all configuration is done in my router settings.

How-To

IMPORTANT:

This may be specific to my router. Your settings may be in a different menu, called something completely different, etc. Please be mindful of that!

  • Find your default gateway address Open Command Prompt, run "ipconfig", and grab your "default gateway" address. This should allow you to log into your router.

Image description

  • Open a web browser and navigate to your default gateway address Image description

NOTE:

You may need a password to access your router settings or certain menus. You can usually find this on the back of your router.

  • Navigate to port forwarding settings
    Per my router, port forwarding settings are under Firewall -> NAT/Gaming.
    Image description

  • Configure port forwarding for both Kibana and Streamlit
    Per my router, I set up a service entry for both Kibana and Streamlit...
    Image description
    Image description

...and then pointed the service applications to my device.
Image description

Kibana can now be accessed by remote machines at http://PUBLIC_IP:5601

Streamlit can now be accessed by remote machines at http://PUBLIC_IP:8501

NOTE:

This is only for remote access. If you are trying to access the application from the local network, you need to use "localhost" instead of the public IP. I learned this the hard way...for almost 3 weeks.

Closing Remarks

This part took a very long time because, as I mentioned above, I was testing from my local network instead of remotely. Definitely a lesson learned.

I also got the chance to rewrite the entire Streamlit app to utilize pages! This allowed me to proceed with Veverbot, your very own D&D AI assistant! Lots of cool stuff to talk about in the coming weeks.

Check out the GitHub repo below. You can also find my Twitch account in the socials link, where I will be actively working on this during the week while interacting with whoever is hanging out!

GitHub Repo
Socials

Happy Coding,
Joe

Top comments (0)