how is docker better if tools like fedora's devassistant and virtualenv exist? [closed]

I am trying to understand docker.io LXC container for a while,but if we consider fedora‘s devassistant tool and virtualenv then virtualenv will do the work of isolation and devassistant will download all the needed dependency by interpreting the setup configuration file.so its like by using two keyword commands on terminal like we almost setup a developer environment of Openstack or lets say large multi-repository project within minutes taking into consideration to use right tool for the right job.so how is docker different?

  • marathon + mesos + networking + docker-compose
  • Managing directory permissions across the host and Docker container environments
  • Unable to delete untagged images:Error response from daemon: Conflict, 511136 wasn't deleted FATA[0000] Error: failed to remove one or more images
  • Creating a bootstrap Dockerfile that automatically exposes files to the host operating system
  • Docker: enhancing containers
  • Pull a local image to run a pod in Kubernetes
  • How to run docker to other server machine
  • Docker Compose injecting linked containers in v2
  • NGINX as reverse proxy on another container - how to configure the config files
  • docker-engine conflicts with packages
  • Kubernetes rc sent args to container app
  • How do I edit files in a docker image?
  • One Solution collect form web for “how is docker better if tools like fedora's devassistant and virtualenv exist? [closed]”

    virtualenv only does isolation for python environments, it doesn’t do process isolation.

    I’m not familiar with fedora’s devassistant but I’m pretty sure those changes are system wide. What if on the same server you want to run, python, ruby, java, and node.js apps? There might be conflicting requirements at the system level.

    With Docker, this is easy because each app has it’s own container and they can put what ever you want in there, and they don’t interfere with each other. Think of docker like this. It is giving each application it’s own VM (container) to live in, it is similar to setting up a physical server and installing different virtualbox servers on it, one for each application. But it is much more lightweight and you can run it on both physical and virtual hosts.

    You can also move the docker containers from one docker compatible server to another really easily.

    Docker will be the best open platform for developers and sysadmins to build, ship, and run distributed applications.