Sometimes It's OK to Reinvent the Wheel
*"...Look for a repeat of this fiasco with Docker..."*
At the risk of sounding like an old codger, I think this is symptomatic of 'the yoof" of today.
Now I'm all for DRY and "not re-inventing the wheel" but sometimes I think we've gone too far the other way. No fecker bothers to work out how to do anything for themselves any more. They just bolt together a load of packages built by someone else and hope it works.
I'm in no way a high-level coder, but I do freelance web developement, some JS tinkering and server config and I hand-code most of what I do.
I've been called in on a few occasions to help web developers at design agencies who need something adding to their site, or to troubleshoot when they can't get something to work.
Seems to me NPM and [since you mentioned it] Docker are just more examples of this. Only Docker is bringing the practice to server management.
Instead of actually doing a bit of `apt-get` and setting a few config options, just press the big magic button and the internet unicorns will set everything up for you. It doesn't matter that you haven't a clue what's going on and have now idea how any of it works [or what to do when it doesn't] –congratulations! You are now a "Server Administrator and Back-End Developer"