Public IP addresses are handed out by your internet provider, most of the time you use DHCP to receive a public IP address. Most ISP's will only provide one IPv4 address at a time. Only through IPv6 you can have whole subnets to assign to each of the interfaces.
What you can do is do portforwarding as proposed by user535733, you can assign multiple names to the one IP address you have so you can use for instance minecraft.mydomain.net and port forward tcp/25565 or udp/19132 to your minecraft server. You can then use passwrdmgr.mydomain.net with exactly the same IP address and then port forward tcp/8080 or whereever it is running.
The article you linked is for bridging two interfaces into one, which would make them act as one ethernet network. I think you wanted to separate the interfaces and not join them. It's also for archlinux and not Ubuntu.
ddclient monitors an interface for ip address changes and sends it to a dns provider. I personally have 2 domains and host them both at AWS Route53, previously I used ddclient in combination with DYNDNS.
Here it says that you can use ddclient in combination with noip.
https://medium.com/@nobuto_m/minimal-dynamic-dns-configuration-for-no-ip-com-with-ddclient-cb7c038a74be
In the file /etc/ddclient/ddclient.conf you can add 2 times the same block, but with a different
use=web
ssl=yesprotocol=noip
login=yourusername
password=yourpassword
minecraft.noip.com
use=web
ssl=yesprotocol=noip
login=yourusername
password=yourpassword
password.noip.com
This should give you 2 domainnames (minecraft/password) pointing to the same IP address.
Since IPv4 is only 4 bytes long there is a shortage and most providers give customers only one address. But IPv6 is 16bytes long, you can get your own subnet with an enormous range. Say you're provider assigns an address to you 2001:678:5d4:123::1/64. The /64 divides the first 64 bits into the network part which indicates your provider, the last 64 bits can be assigned by you. so you can assign ::1 to your minecraft interface, ::2 for your vpn and so on.
Ubuntu has an explanation on how to read IPv6 Addresses
https://wiki.ubuntu.com/IPv6#Reading_IPv6_Addresses
The implementation of IPv6 depends on your provider, assuming you can read german, this may be useful
https://telekomhilft.telekom.de/t5/Festnetz-Internet/Richtiges-IPv6-Subnetting/td-p/5068434
Using two hostnames on one ip address does mean that portforwarding does allow mixing, so minecraft.noip.com:80 and password.noip.com:25565 would work. if the password manager is on a webserver, you can configure the webserver to only serve the correct hostname.
Networking is heavily layered, the hostname maps to an ip address, that ip address ties to an interface that can be reached by a route, the application using the service uses udp or tcp protocols, which can be firewalled and portforwarded (dnat) to an internal server and through firewalling you can forbid traffic between two area's. You do have to be careful, because this is quiet complicated and not easy to read.
I run my stuff mostly in docker containers, it runs one application in a restricted space, it can communicate with other docker containers unless you put it in a separate docker network. Docker compartmentalizes the linux kernel. I run multiple applications on one Ubuntu server, but the applications run isolated from eachother if I specify them to run in their own network.
This is how I run my minecraftserver
docker run -d -it --name mc-server -e EULA=TRUE -p 19132:19132/udp -v mc-volume:/data itzg/minecraft-bedrock-server