During development you should use a Node based workflow, to be able to use live reload and similar tools. For production, by building in Docker you know that whatever is built is what you will get in prod, as it's the same Docker image. Yes, Angular takes lots of resources, the same in a local machine or a Docker container. It wouldn't help much building in the local machine instead of in Docker, it's basically the same in overhead. If you want to build your Docker image locally instead of building it in your server, you can do that, and then push the built image to the server using docker push
.