Re: AppV
Containers are like VMs, except they are more light weight and so take less memory and start up very fast.
Let's put it this way. Linux (or Solaris) is already designed to run multiple programs at once, so why do we need VMs or containers? It's because there are still shared resources which can cause one app to interfere with another. VMs deal with this by simulating an entire computer, while containers deal with it by providing what appear to be separate copies of just those things which can cause problems. As a trivial example, a container will provide an app with a view of the file system that looks like it has the file system all to itself. What makes this different from a traditional "chroot" is that this sort of thing is duplicated for everything. However unlike a VM, you are not duplicating the entire OS, just changing the OS services.
With VMs you can run different operating systems versions or even completely different operating systems altogether. With containers there is only one OS present. This means that despite the advantages of containers, traditional VMs aren't going to go away completely. The two complement each other rather than being direct replacements.
Unix type operating systems have had container-like features forever. However, containers are not an all or nothing type of thing. They're a matter of degree and the details matter. What makes Linux containers (and Solaris zones) different is all the work they put into tracking down all the details where one process can "see" the presence of another. It involves design changes deep in the innards of the OS kernel so it's not an add-on package.
Docker is not providing containers. Containers are part of the OS itself. What it is doing is providing what I would call a "cloud-lite" layer on top of containers for deploying and managing server applications. I'm calling it "cloud-lite" because proper Docker apps are written like cloud services, but you can run them on your own hardware (although you can run them on a public cloud if you wanted to). If "cloud-lite" doesn't really explain it for you, I'll simply say that the app format is restricted in what it can do so that it can be started up, shut down, and moved around easily.
Windows no doubt has a few container-like features already. However, if they had a full-blown container system they would say so and people would be using it. Keep in mind that containers are not an all or nothing affair. The big question when the next server version comes out is going to be what the limitations of their containerization will be.
Microsoft App-V is something else altogether. It's a means of streaming applications to clients rather than installing them directly. There is a certain amount of redirection involved in this, but it's really a different thing intended for a different and very specialized market. Ignore the AC marketroids.