Knowing right principles spares one from memorising all the details.
Nginx is highly optimized zero-copy sockets-reuse code, while docker's network code is crappy, does NAT and other stuff.
I would classify it as unnecessary, redundant set of abstractions. Definitely for production.