Great question! I will use pyenv (which comes with pieces to work with virtualenv) as it makes it easy to extend docker containers should I need to upgrade Python itself or any of its packages. But, as someone pointed out, docker itself is a virtual environment. So, if it makes sense for you to use a Python virtualenv then go for it. But, if it's not necessary for the particular container, there's no reason that you must use one.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.