Your post is a good introduction, but sadly the first sentence is wrong:
as it makes it so much easier to transfer apps between operating systems (os)
You can't transfer containers between operating systems at all. VMs can do that. Why? As you said, docker uses the underlaying operating system (Linux). So it would be better to say "easier to tranfer apps between servers" or something like that.
I know that there are windows containers too, but those are also only able to run in windows.
Actually Docker distributions on Windows or OSX are virtual machines running a Linux kernel. So in practice you can build regular Linux Docker images and run them on the three systems. That's just Linux everywhere under the hood, and you'll have a few caveats due to the hidden virtualization layer (e.g. docker network access from the host).
Your post is a good introduction, but sadly the first sentence is wrong:
You can't transfer containers between operating systems at all. VMs can do that. Why? As you said, docker uses the underlaying operating system (Linux). So it would be better to say "easier to tranfer apps between servers" or something like that.
I know that there are windows containers too, but those are also only able to run in windows.
Hey thanks. Still a lot to learn. I was hoping I could transfer containers between all os.
Actually Docker distributions on Windows or OSX are virtual machines running a Linux kernel. So in practice you can build regular Linux Docker images and run them on the three systems. That's just Linux everywhere under the hood, and you'll have a few caveats due to the hidden virtualization layer (e.g. docker network access from the host).
Yeah, but that still makes the containers run on Linux and not the host operating system.
Good work.
I think you have a good sense of how the stuff works and are needed.
Maybe the correct word was deploy.
It would be something like: