Is there something like Docker but for Windows users?
-
What you just described is a VM using snapshots. Docker uses VMs under the hood, but it's an app container within an isolated environment. The keyword being app here. If you want a root OS type thing going on, you're looking at a VM directly.
pwhe23 wrote:
After playing around with Docker I started wondering if something exists that provides similar functionality for Windows.
Just to avoid confusion... Docker For Windows[^]. However, it's for contained apps on Windows and not the root OS itself.
Jeremy Falcon
Apparently it is possible to containerise at the OS level (linux anyway - LXC's). Depends how you use your machine, for me my base (w7) machine is tuned for dev (i.e. many services turned off/manaul) so using docker at OS level wouldn't be a valid testing setup (even if I turned things back on in the container); for devs targeting individual desktops or/and servers it'll remain better to use a "clean/standard setup" VMs ("un-tuned" or tuned-like-the-customers-machines apart from perhaps a few other installed programs such as vs (or some debugger), and say ff and np++..)
Installing Signature... Do not switch off your computer.
-
After playing around with Docker I started wondering if something exists that provides similar functionality for Windows. Say I have a new laptop that I got from HP (I do), I want to be able to create a VHD that I could somehow launch that would then virtually store any changes to my Windows installation, files, registry, etc as another layer on top of what is running on my laptop. I would then be able for example install development software like Visual Studio. Even better I could have two of these VHDs with different versions of Visual Studio, maybe one is a Preview I want to play with. When I'm doing with it, I just delete the VHD and my system is back to the way it came from the factory. I seem to remember 20 years ago when I worked in IT in college we had some software we used for lab computers that kinda worked like this, Deepfreeze maybe? Thanks for any ideas if ya'll know of something like this.
Look at [Turbo Containers - Run Applications Anywhere](https://turbo.net/) (Previously known as Spoon) And stay away from Docker for Windows. I'm using Docker Toolbox with .NET Core 2 and quite happy with the process. I wrote about my Docker for Windows experience [here](https://marcclifton.wordpress.com/2017/11/18/my-docker-for-windows-experience/) and [here](https://marcclifton.wordpress.com/2017/11/18/uninstalling-docker-for-windows/). Marc
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
-
Look at [Turbo Containers - Run Applications Anywhere](https://turbo.net/) (Previously known as Spoon) And stay away from Docker for Windows. I'm using Docker Toolbox with .NET Core 2 and quite happy with the process. I wrote about my Docker for Windows experience [here](https://marcclifton.wordpress.com/2017/11/18/my-docker-for-windows-experience/) and [here](https://marcclifton.wordpress.com/2017/11/18/uninstalling-docker-for-windows/). Marc
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
Marc Clifton wrote:
stay away from Docker for Windows
I echo that sentiment.
This space for rent
-
After playing around with Docker I started wondering if something exists that provides similar functionality for Windows. Say I have a new laptop that I got from HP (I do), I want to be able to create a VHD that I could somehow launch that would then virtually store any changes to my Windows installation, files, registry, etc as another layer on top of what is running on my laptop. I would then be able for example install development software like Visual Studio. Even better I could have two of these VHDs with different versions of Visual Studio, maybe one is a Preview I want to play with. When I'm doing with it, I just delete the VHD and my system is back to the way it came from the factory. I seem to remember 20 years ago when I worked in IT in college we had some software we used for lab computers that kinda worked like this, Deepfreeze maybe? Thanks for any ideas if ya'll know of something like this.
Its isn't a turnkey solution, but what you describe is essentially what Microsoft's Desktop App Converter[^] does -- it virtualizes the file system, registry, etc. for the desktop app that's being converted, and creates an installable windows UWP package. It probably won't keep that installed app from mucking with the main file system and registry once the installation is running on your machine, but at least all the registry keys and files related to the app itself are in a container. I keep waiting for MS to deliver the community version of Visual Studio that way, so I don't have to permanently suffer the 750,000 registry entries it creates during installation on my personal machine, just to have it around for the odd time I want to use it. Or.. would a sandbox product work? Something like SandboxIE maybe?
I live in Oregon, and I'm an engineer.
-
I'm not sure I have a great use-case other than crappy laptops, just curious after playing with Docker and the idea of layering. Figured ya'll might know something I don't ;)
-
Apparently it is possible to containerise at the OS level (linux anyway - LXC's). Depends how you use your machine, for me my base (w7) machine is tuned for dev (i.e. many services turned off/manaul) so using docker at OS level wouldn't be a valid testing setup (even if I turned things back on in the container); for devs targeting individual desktops or/and servers it'll remain better to use a "clean/standard setup" VMs ("un-tuned" or tuned-like-the-customers-machines apart from perhaps a few other installed programs such as vs (or some debugger), and say ff and np++..)
Installing Signature... Do not switch off your computer.
Lopatir wrote:
Apparently it is possible to containerise at the OS level (linux anyway - LXC's).
My understanding of it, the way Docker works on Linux doesn't use a VM. The OS provides the functionality to contain processes, which is what is being linked to. And so Docker takes advantage of that. On Windows I didn't think there was a way to do that without a VM. But, I'm a total Docker n00b, so who knows.
Lopatir wrote:
Depends how you use your machine, for me my base (w7) machine is tuned for dev (i.e. many services turned off/manaul) so using docker at OS level wouldn't be a valid testing setup
So when you mean at the OS level, are you not using Hypver-V or any VM at all, or is it going through Hyper-V still but you're just turning off/on Windows features, etc.?
Lopatir wrote:
Installing Signature...
:omg:
Jeremy Falcon
-
Look at [Turbo Containers - Run Applications Anywhere](https://turbo.net/) (Previously known as Spoon) And stay away from Docker for Windows. I'm using Docker Toolbox with .NET Core 2 and quite happy with the process. I wrote about my Docker for Windows experience [here](https://marcclifton.wordpress.com/2017/11/18/my-docker-for-windows-experience/) and [here](https://marcclifton.wordpress.com/2017/11/18/uninstalling-docker-for-windows/). Marc
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
Just read the first part of the first link, and I believe you just confirmed what I think. Docker for Windows requires Hyper-V correct?
Jeremy Falcon
-
Marc Clifton wrote:
stay away from Docker for Windows
I echo that sentiment.
This space for rent
Too bad Docker is now another buzzword in the industry though. :sigh:
Jeremy Falcon
-
Just read the first part of the first link, and I believe you just confirmed what I think. Docker for Windows requires Hyper-V correct?
Jeremy Falcon
Jeremy Falcon wrote:
Docker for Windows requires Hyper-V correct
Yup!
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
-
Jeremy Falcon wrote:
Docker for Windows requires Hyper-V correct
Yup!
Latest Article - Class-less Coding - Minimalist C# and Why F# and Function Programming Has Some Advantages Learning to code with python is like learning to swim with those little arm floaties. It gives you undeserved confidence and will eventually drown you. - DangerBunny Artificial intelligence is the only remedy for natural stupidity. - CDP1802
My condolences. :)
Jeremy Falcon
-
Lopatir wrote:
Apparently it is possible to containerise at the OS level (linux anyway - LXC's).
My understanding of it, the way Docker works on Linux doesn't use a VM. The OS provides the functionality to contain processes, which is what is being linked to. And so Docker takes advantage of that. On Windows I didn't think there was a way to do that without a VM. But, I'm a total Docker n00b, so who knows.
Lopatir wrote:
Depends how you use your machine, for me my base (w7) machine is tuned for dev (i.e. many services turned off/manaul) so using docker at OS level wouldn't be a valid testing setup
So when you mean at the OS level, are you not using Hypver-V or any VM at all, or is it going through Hyper-V still but you're just turning off/on Windows features, etc.?
Lopatir wrote:
Installing Signature...
:omg:
Jeremy Falcon
Jeremy Falcon wrote:
So when you mean at the OS level, are you not using Hypver-V or any VM at all, or is it going through Hyper-V still but you're just turning off/on Windows features, etc.?
In this I meant my own machine has everything turned off I can get away with, so to do effective testing I would need a proper VM (i.e. installed "normal" setup) rather than a docker container which relies on the underlying OS. Some good summaries here: stackoverflow.com/questions/16047306/how-is-docker-different-from-a-normal-virtual-machine (on purpose pasted as text rather than a link, in case you don't like links.) About 1/4 ways down a good mention of the LXC'c...
Quote:
Linux Containers (LXC) are operating system-level capabilities that make it possible to run multiple isolated Linux containers, on one control host (the LXC host). Linux Containers serve as a lightweight alternative to VMs as they don’t require the hypervisors viz. Virtualbox, KVM, Xen, etc.
Installing Signature... Do not switch off your computer.
-
Too bad Docker is now another buzzword in the industry though. :sigh:
Jeremy Falcon
Thing is, I have Docker set up on a couple of QA Ubuntu servers, acting as replicas of prod environments, and they are brilliant. It makes testing so much easier because the image acts as a clone of prod, so I have a faithful reproduction that I can test against.
This space for rent
-
Thing is, I have Docker set up on a couple of QA Ubuntu servers, acting as replicas of prod environments, and they are brilliant. It makes testing so much easier because the image acts as a clone of prod, so I have a faithful reproduction that I can test against.
This space for rent
Maybe it's time I stop being old then and look into it. Be one of the cool kids again.
Jeremy Falcon
-
Maybe it's time I stop being old then and look into it. Be one of the cool kids again.
Jeremy Falcon
You never stopped being one of the cool kids. Me? Well, I never grew up. Never worry about having a second childhood; don't leave your first one.
This space for rent
-
You never stopped being one of the cool kids. Me? Well, I never grew up. Never worry about having a second childhood; don't leave your first one.
This space for rent
Well I can't argue with this obviously extremely intelligent and highly inspired post. :-\
Jeremy Falcon