Docker has provided data scientists (and, really, everyone in software) with the ability to share code in a reproducible fashion. I remember when I was first exposed to it NaN years ago. I had been someone who used old-school virtual desktops that were clunky and took up a lot of memory just by virtue of their architecture. The day I first learned about Docker I was so excited that I was awake most of the night thinking about it! Like a kid at Christmas, I collected a whole bunch of different containers both because I could and because it made me giddy thinking about all of these great new environments I could develop (play) in.

So that brings me to today. Sure, I can do things in a virtual environment, but what if I screw up something somewhat major? (Think: messing around with CUDA drivers and the like.) I am able to screw up my local system as well as the next person. Doing all of my development inside a container prevents me from doing any permanent damage. (Because how long does it take for you to get your linux environment set up just right like you like it???) Plus, I can easily share that environment with other people and not have to worry about system and package differences. It just works. And this is great for data scientists because we tend to have a lot of software dependencies on things like Python packages.

#docker

Get Going With Neo4j and Jupyter Lab Through Docker
1.35 GEEK