2 ms·
Virtualenv and Docker have two very different purposes: the former basically sets the environment variables to isolate Python runtime environment from the rest
by BerislavLopac 8y ago
Virtualenv and Docker have two very different purposes: the former basically sets the environment variables to isolate Python runtime environment from the rest of the filesystem, while the latter isolates OS processes.
No "languages have moved [...] into [...] Docker" -- it's just that you can isolate your running process using Docker, so any platform that runs a process (hint: all of them) can use Docker. Python virtualenvs have the primary purpose to isolate Python environment during development, and Docker is not the right fit for that purpose: one container basically isolates a single process, and when developing you want to be able to run a number of different processes at will: tests, code with or without debug etc. With docker, you either need a container for each process, or you can parametrise a single one, and each of those solutions adds unnecessary complexity.