How to Use Separate IPs from IP Host for Apps?

DzikrRully

Dabbler
Joined
Jun 23, 2022
Messages
14
Hi everyone,

My Truenas Scale only has 1 LAN port which that's port has 192.168.99.212 as Host IP to access TrueNAS Scale.
Can someone explain me step by step, how to Use Separate IPs from IP Host for Apps?

This is my plan:
- 192.168.99.212 for TrueNAS Scale Host
- 192.168.99.211 for AdguardHome from TrueChart
- 192.168.99.210 for NextCloud from TrueChart

Please help so that I can use the above plan, thank you in advance.
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
To do it properly:

Step 1: Install the TrueCharts App "MetalLB"

Step 2: Learn how to use that app to create the IP address pools you want for your apps. https://metallb.org/concepts/ https://metallb.universe.tf/configuration/ https://truecharts.org/charts/enterprise/metallb/setup-guide

Step 3: Set your app to use the right option in MetalLB using the LoadBalancer option in the app settings. https://truecharts.org/manual/SCALE/options/networking

To do it in a hacky way that will produce the effect you're asking for, but not do what you think it's doing (and be no more secure than running the apps on the same IP address as TrueNAS... which is also really the case in the above example... this isn't about security so disabuse yourself of any illusions there)

Step 1: forget about using TrueCharts apps.

Step 2: Use the "Launch Docker Image" button to run whatever app you want.

Step 3: Under Networking, Add an External Interface, selecting the host interface and either selecting DHCP or static IP and specifying an IP address in the case of the latter.
 
Last edited:

DzikrRully

Dabbler
Joined
Jun 23, 2022
Messages
14
To do it properly:

Step 1: Install the TrueCharts App "MetalLB"

Step 2: Learn how to use that app to create the IP address pools you want for your apps. https://metallb.org/concepts/ https://metallb.universe.tf/configuration/ https://truecharts.org/charts/enterprise/metallb/setup-guide

Step 3: Set your app to use the right option in MetalLB using the LoadBalancer option in the app settings. https://truecharts.org/manual/SCALE/options/networking

To do it in a hacky way that will produce the effect you're asking for, but not do what you think it's doing (and be no more secure than running the apps on the same IP address as TrueNAS... which is also really the case in the above example... this isn't about security so disabuse yourself of any illusions there)

Step 1: forget about using TrueCharts apps.

Step 2: Use the "Launch Docker Image" button to run whatever app you want.

Step 3: Under Networking, Add an External Interface, selecting the host interface and either selecting DHCP or static IP and specifying an IP address in the case of the latter.
Hi @sretalla ,

for this step
Step 3: Under Networking, Add an External Interface, selecting the host interface and either selecting DHCP or static IP and specifying an IP address in the case of the latter.
does it mean i must add another LAN interface?
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
does it mean i must add another LAN interface?
It means you click this button:
1683708943397.png


Then fill in the detail in the box that appears.
1683709034586.png
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
It's in the App setup when you click the Launch Docker Image button.

You're trying to make sense out of step 3 without starting step 2...
 
Last edited:

DzikrRully

Dabbler
Joined
Jun 23, 2022
Messages
14
It's in the App setup when you click the Launch Docker Image button.

You're trying to make sense out of step 3 without starting step 2...
if I want to carry out my plan above, then I have to use Apps MetalLB from TrueCharts (to manage Apps IP) and use Launch Docker Image (to run other Apps like AdguardHome, NextCloud, etc)?
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
if I want to carry out my plan above, then I have to use Apps MetalLB from TrueCharts (to manage Apps IP) and use Launch Docker Image (to run other Apps like AdguardHome, NextCloud, etc)?
NO.

You have to use Apps MetalLB from TrueCharts (to manage Apps IP) OR use Launch Docker Image (to run other Apps like AdguardHome, NextCloud, etc)

You don't need to do both.

Use either the first three steps I outlined to use TrueCharts apps OR the second three steps to do it a "simpler" way.

OR

Reconsider your position on needing IP addresses for each app and use Traefik to publish all your apps on the one IP.
 

NugentS

MVP
Joined
Apr 16, 2020
Messages
2,947
As @sretalla says. Either
1. use MetalLB which will hide an app behind a different IP (once set up correctly - not hard)
2. Use Launch Docker / Docker on Docker / a VM with Docker
 

majorgear

Dabbler
Joined
Mar 13, 2012
Messages
36
NO.

You have to use Apps MetalLB from TrueCharts (to manage Apps IP) OR use Launch Docker Image (to run other Apps like AdguardHome, NextCloud, etc)

You don't need to do both.

Use either the first three steps I outlined to use TrueCharts apps OR the second three steps to do it a "simpler" way.

OR

Reconsider your position on needing IP addresses for each app and use Traefik to publish all your apps on the one IP.
On my new TN install, I'm going to have a mix of some apps only accessed by reverse proxy, and some apps will be access by VIP(metallb) and rev proxy(Traefik). It's the setup I had on my k3s cluster, that I'm now migrating to TN.

Knowing this should I install metallb before Traefik so that I can assign a VIP to Traefik? My old setup was like this , but then I had 3 load balanced Traefik servers, so the VIP was necessary there.
 

sretalla

Powered by Neutrality
Moderator
Joined
Jan 1, 2016
Messages
9,703
I don't think the order of install really matters as such, but obviously if you define the LoadBalancer IP in an app and don't have a load balancer installed to do anything with that, don't expect that IP to be used.
 

majorgear

Dabbler
Joined
Mar 13, 2012
Messages
36
Thanks. I did decide to use a bridged interface to assign static IPs to apps and nginx proxy manager for rev proxy instead, but it’s good to know regardless.
 
Top