Setting up software versions via docker

Hello there!
I’m new to docker, but read through how it works and created a few simple images for the purpose of testing.

I’m developing software and have to switch between different versions of the software in order to do debugging and support. That entails updating repositories to different versions, setting up config files, running the installation to overwrite the previous version of the software… the whole lot. Everything is running on my os (opensuse leap 42.3), though.

I was looking into docker in order to make that switch between the installed versions easier. My understanding of how docker works would mean that I would have to go through the following steps in order to set up the system I desire:

  • generate from a base image (opensuse leap 42.3) and install all the components required (this generates a 1.8 GB image with no part of my actual software installed)

  • derive images from that base image where I install the respective software versions (this would add anywhere from 200 to 700 MB and the orignal image is copied, as well?)

It seems to me like a bind-mount setup would use a lot less space and be a lot easier to maintain… I suppose that if I had to switch in-between development tools, using docker would make sense… My question is. Am I correct or (and this is very likely, since I’m a beginner) am I missing something?

In essence, can I use my installed OS as the basis for my image? Would that even be the way to go? Or would a bind mount actually be the thing to go for?

Greetings,
ainawing.

Hello again,

I have to admit that I did not expect this to go unanswered for over two weeks, but here we are.

Is this not a rather trivial question for anyone who has experience with docker? Did I provide insufficient information on my use case?

Greetings from a rather confused newbie,
ainawing.