I am confused about the post. Last time I checked angular was still rendered in the browser and only static files where served by a web server (like nginx). Thus, the host executing the angular process needs to able to reach the fake_server service, not the web server.
Thanks for the answer,
The solution that i found is to create a json file in the angular project before spin up the container and pass them the ip of the host-machine in order to use that instead the container name (fake_server).
In the real world usualy you end up having domain names that point to external entrypoints like loadbalancers and/or reverse proxies. Does your solution cover such a scenario?
You might want to introduce an enviornment variable to pass the domain name or ip into your ngninx container and render it in the file you serve with your angular application.
Also you might want to consider to add a reverse proxy in front of your nginx server and your other backend services, to provide a single entrypoint that dispatches the requests according subdomains or context paths to the target containers.