DEV Community

Cover image for Do you use python virtualenv inside Docker at production?
Mohamad Ashraful Islam
Mohamad Ashraful Islam

Posted on

Do you use python virtualenv inside Docker at production?

Do you ship your container dev to the stage, stage to prod? OR, clone the repo at production server and run docker command, like, docker-compose up --build

Top comments (13)

Collapse
 
defman profile image
Sergey Kislyakov

No. I don't see any benefits for that. Docker container is already a virtual environment itself, not sure why I'd want to have another one inside it.

Collapse
 
ashraful profile image
Mohamad Ashraful Islam

Do you ship your container dev to stage, stage to prod. OR, clone the repo at production server and run docker command, like, docker-compose up

Collapse
 
defman profile image
Sergey Kislyakov

CD does delivery to staging, once we're good with it, it's simply a click on a button to release it and ship to prod.

Collapse
 
ashraful profile image
Mohamad Ashraful Islam

That's a good and valid point. Thank you

Collapse
 
erebos-manannan profile image
Erebos Manannán

It's great when doing a multi-stage build on Alpine Linux - install your build dependencies, build your dependencies to a .venv and then copy that from the build container to the actual runtime environment.

Helps both you stage your Dockerfiles correctly for optimal build times, and with the end results cleaner and not having to worry about leaving C compilers etc. lying around.

Collapse
 
erebos-manannan profile image
Erebos Manannán

Automated pipelines ftw. Have push to master trigger tests + builds + deployment automatically.

Collapse
 
marounmaroun profile image
Maroun Maroun • Edited

I don't like to have difference between my development setup and the production setup (containerized). I don't find it harmful to have a virtual env inside the container.

Collapse
 
ashraful profile image
Mohamad Ashraful Islam

Do you ship your container dev to stage, stage to prod. OR, clone the repo at production server and run docker command, like, docker-compose up

And thanks for your thought.

Collapse
 
marounmaroun profile image
Maroun Maroun

We actually use K8s for dev, staging and production clusters. For development, we have containers that're orchestrated by docker-compose.

The flow is: Test things locally, once done, deploy to dev, then move to staging and finally deploy on production.

Collapse
 
juancarlospaco profile image
Juan Carlos

No virtualenv, no Docker.

Collapse
 
ashraful profile image
Mohamad Ashraful Islam

Didn’t get your point. Can you please say a little bit more?

Collapse
 
juancarlospaco profile image
Juan Carlos

I do not use virtualenv, nor Docker.
:)

Thread Thread
 
ashraful profile image
Mohamad Ashraful Islam

Ok then. Probably you could skip this discussion. Btw, thanks