DEV Community

Discussion on: Do you use Docker or Virtualenv for Python?

Collapse
 
vbordo profile image
Victor Bordo • Edited

Good question! I use Pipenv when developing Python applications locally. pipenv is now the official Python recommendation for managing isolated environments. I use pipenv because it makes isolated environment management incredibly simple. It's important to note that you aren't facing a mutually exclusive choice here. There are Dockerized applications that use multiple isolated environments within their architecture. The boundary for me when deciding to use Docker is the scale at which the application will be used. If we're talking a production-ready web application that needs to scale to 1000's of users then containerize away! However, if we're talking about an internal tool that a team of data scientists distributes locally to use on their personal machines, then you may not need Docker. Honestly, I don't see a problem with Dockerizing for the second use case either as long as it doesn't create an unnecessary barrier to entry amongst the team.

Collapse
 
rosejcday profile image
Rose Day

Oh interesting! Thanks for the link, I will definitely look into it more. I appreciate you responding, the idea of containerizing large scale production versus small scale in-house applications makes sense. Some applications I have seen for in-house use don't necessarily need the container while others seem more suited towards it.