I wanna host many subdomains on one server with only one public ip. For example there would be: service1.myurl.com, service2.myurl.com and myurl.com. How can I achieve that ? Would running the different services in containers and referencing them work?
The most correct way for you to do this, install serial and configure BIND9 as authoritative to forward these requests to your web server.
Pointing your domain to the IP of the DNS server you just installed. Set up a DNS zone for that domain, and indicate the subdomains that your web server wants answered, as well as configure your virtualhost on the web server to respond to the subdomains created.