Making use of docker for development environment : a use case

My question is little vague but I tried looking for the answer here
and there but could not understand if I can leverage docker for my work.
My requirements
I usually try different versions of java, python and other software like
different versions of eclipse, Linux package and other tools. This at
the end make my Ubuntu installation a complete mess and some time
completely broken. Then I started using Vm it solve most of the problem
but make my pc very slow for frequent switching.

So my question can I achieve my work using docker without affecting
my os? Can I run gui application, install different package(apt-get install) without
affecting underlying OS.
Switch actively between different docker container and underlying os.
Clean/remove unused/broken install of docker instance (containers?), share it to other to try out etc. Any pointer to similar use case or how to would be helpful.
PS: I have also posted it on SO link:

Yes, all of that is possible.

The part that can be a little more difficult is editing the code you want to run inside the container. Some people do this by sharing a volume (disk directory) between the container and the host. Some people build containers with the code inside and create scripts to automatically build and run the code they’ve written.

You could do some searches for “docker java development environment” and find examples of the different techniques. If they mention “boot2docker” or “docker machine” then they are running Docker inside a VM (you can run multiple containers inside the same VM).

1 Like

Thank you, will try it.