Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Docker WebUI button disappears for container with network set to another container

Featured Replies

I'm trying to get a docker container to route its internet traffic through another docker container exactly as is described in this SpaceinvaderOne video:

 

 

However, when I follow the video, all containers that are using the vpn container lose their "WebUI" button on the docker tag of Unraid. The WebUI is still accessible by typing in the URL manually into my browser, but I'm trying to figure out how to get the buttons back.

 

To summarize the main points of the video:

1. I specify --net=container:<container-name> on all containers that I want to route through another container

2. the vpn container must expose the ports that the sub-containers are publishing on to be able to access them

3. The vpn container must allow local connections on its iptables. I've done this manually and know it works because I can access the webui by manually typing in the URL of the container (with port) and it resolves.

 

The default WebUI values that I see in the sub-container's docker templates are along the lines of http://[IP]:[PORT:<WebUIPort>] where <WebUIPort> is replaced with the container's (not necessarily the host mapping that you specify in the template) published port. I've tried these variations:

 

1. http://<ip-of-unraid-server>:<external-accessible-port-of-container>

2. http://<ip-of-unraid-server>:<internal-port-of-container>

2. http://[IP]:[PORT:<internal-container-port>]/

3. http://[IP]:[PORT:<external-accessible-port-of-container>]/

 

Where all angle brackets are replaced with their literals by me and not unraid.

Solved by voyager12

When you use another container as network access, the GUI is unable to resolve the IP address which is needed to access the original container.

Consequently it removes the WebGui option from the menu.

 

  • Author

Then why does the manual specifying of the URL not work? If I remove the bracketed parts and put in exactly what it should use, why does that not work?

That field is not an editable field, but a placeholder which the GUI will fill in.

 

  • Author

So it's not a template where the IP and ports are replaced? If that's the case, then what's the point of the input field in the template scheme? What can you change about it?

  • Author
  • Solution

So I was able to fix my problem. The WebUI link generation is in /usr/local/emhttp/plugins/dynamix.docker.manager/include/DockerClient.php. I just wrote a user script that patches the link generation that just allows a manual, user-specified WebUI if all other methods fail. I was going to try to put in a PR to contribute the fix upstream at github.com/limetech/dynamix.git, but that repo hasn't been touched since 2016. Also, the version there is different from the version on 6.9.2. I'm not sure which is more up-to-date as I don't have the date on the version in 6.9.2, though interestingly enough, the one on github looks like it wouldn't have this problem. Did limetech take the code to closed source or is there another place that the code is hosted?

  • 8 months later...

I have the same issue as you but I still don't understand how you were able to fix it. Did you enter that line in the empty space or somewhere else?

  • 4 weeks later...
  • Author
On 9/6/2022 at 8:52 PM, JTerryy said:

I have the same issue as you but I still don't understand how you were able to fix it. Did you enter that line in the empty space or somewhere else?

I'm sorry it's taken me so long to respond. I intended to try to publish my fix; however, my server is currently down for maintenance to fix unrelated problems and so I don't currently have access to what I did. I will publish what I did once it is back up and running.

 

As a summary, I just use a user script to modify the relevant php file to patch the fix I need. Ideally I could make a plugin that does this to make it easier to distribute but we'll see if I prioritize that.

Edited by voyager12
type in last sentance

  • 4 weeks later...
  • Author
On 9/6/2022 at 8:52 PM, JTerryy said:

I have the same issue as you but I still don't understand how you were able to fix it. Did you enter that line in the empty space or somewhere else?

I just reinvestigated this and it looks like this was fixed upstream. Earlier I mentioned the github.com/limetech/dynamix.git repo and that does indeed look to be an old version of the package. Limetech currently uses: github.com/limetech/webui for their repo and in that repo I found this commit: https://github.com/limetech/webgui/commit/d57affd193d4feef700421ce4e527ee3a1a33e18 which looks to have fixed the issue.

 

I don't think this commit was deployed on Unraid 10.3 but it's likely in 11.0 or 11.1. I'll have to test it out when I decided to upgrade my Unraid version.

 

Edit: can confirm that this is fixed in Unraid 6.11.1 at least

Edited by voyager12
Add status of 6.11

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.