I’ve just about got this Docker thing licked. After hundreds of hours, I finally get it, and my dusty millenial ass has joined the 21st century.

-but we have issues

==============================xxxx==============================

The environment:

I have multiple containers running on my local network, including photoprism, Kavita, and Filebrowser. I also installed Heimdall as a startpage. On the local network everything works great.

The entire goal of this project is to have these services accessible from outside the house, from my mobile devices but also with the ability to share links and files with friends.

==============================xxxx==============================

The problem:

Enter Tailscale. I tried port forwarding, having a domain, all that jazz, but it ended up being way too complicated. I don’t want just anyone to access my shit, I only want a handful to be able to use services of my choosing in accordance with the user permissions I set up for them. Tailscale was the first thing I tried that worked.

I added my docker instance to tailscale, and when you access the machine, you are correctly taken to my Heimdal start page. Unfortunately, when you click on the icons for my docker services, the browser gives you an “unable to connect” error.

Under my Tailscale admin panel, the services are listed along with their port and IP information. Heimdall (443) and Portainer(8000) are listed as https and http under “type”, as expected. The remaining services are listed as “other.” (the portainer link doesn’t work either)

  • Has anyone else dealt with this?

  • If this has to do with ports, is there an easy way to configure ports without having to re-run the images and make new containers?

0 points
Deleted by creator
permalink
report
reply
1 point

Set up Tailscale as exit node to your local network.

Make sure that your network is not standard 192.168.0.x or 192.168.1.x IP address range, but something like 192.168.101.x so you don’t have IP conflicts when accessing from a friend’s house or workplace wifi.

Set up Nginx to redirect your home server IP (eg. 192.168.101.5) to the correct port for your dashboard like Heimdall or Dashy.

That’s it. Works like a charm for me if set up this way.

Addendum: if you have trouble on Android, disable MagicDNS.

permalink
report
reply
2 points

Have you looked at using the Funnel feature in Tailscale, instead of port mapping? This gets external traffic onto your Tailscale network (for anyone who doesn’t have Tailscale) for specific resources, courtesy of Tailscale servers.

If you’re just going to open ports to the world, Tailscale isn’t really necessary (it’s useful for you and anyone on TS, since you can use the Serve feature to permit other Tailscale networks to have access to specific resources).

permalink
report
reply
1 point

This sounds like exactly what I need. If I wanted to share my Linux Distros share with my dad, he wouldn’t need to install tailscale and feck with all that?

permalink
report
parent
reply
7 points

What do the links look like on the start page?

The problem is that Tailscale gives your server a “magic” ip, which isn’t the same one as on your local network. On your local network, do you access them by port? Or reverse proxy?

Machine:8080 or service.machine.localdomain

permalink
report
reply
1 point
*

I think this is what you should look into. Are the services in Heimdall listed with the local IP or host names? Or are they referenced with the tailscale IP?

Three things I want to add here:

  • On tailscale I can only access my home lab’s root page with the services being accessible with something like domain.tld/service.
  • service.domain.tld is not supported by tailscale. (See github issue)
  • The local domain is different to the tailscale domain. If you want to use them with a reverse proxy (nginx, caddy) you need to have rules configured for your tailscale magic DNS domain too.

I hope this helps.

permalink
report
parent
reply

Selfhosted

!selfhosted@lemmy.world

Create post

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don’t control.

Rules:

  1. Be civil: we’re here to support and learn from one another. Insults won’t be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it’s not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don’t duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

Community stats

  • 4.7K

    Monthly active users

  • 3.5K

    Posts

  • 78K

    Comments