7 ms·
Most likely never. Docker relies on a linux kernel extension which, as you can probably guess, requires linux.
by serverholic 12y ago
Most likely never. Docker relies on a linux kernel extension which, as you can probably guess, requires linux.
- deleted 12y ago[deleted]
- skrebbel 12y agoI don't understand that. Other kernels may offer features that are similar enough to allow one to implement a large part of Docker on top of it. Nowhere in "docker run -i -t ubuntu /bin/bash" does it say something about LXC. Example in point: Spoon Studio, a very Windowsy application that does, on Windows, something not at all unlike what LXC does [1]. It allows you to add one layer of filesystem (just one, so no commits) over the host OS's filesystem and then run applications inside there, contained very much like how processes are contained inside Docker containers. If this is possible right now (and actually these guys were around before dotcloud was even founded), then I don't see why at some point Docker couldn't come available on multiple platforms. (but I might also completely misunderstand some fundamental thing that makes LXC/Docker completely unlike Spoon and friends) [1] https://spoon.net/studio https://spoon.net/studio EDIT: downvoters, if i'm a moron, please have the decency to tell me why.
- akerl_ 12y agoDocker is based heavily on libcontainer (their replacement for LXC), which is based very heavily on kernel namespaces and cgroups. Those features are Linux-specific, and are a very important and fundamental part of what lets Docker containers work. Somebody could totally write another container backend to replace libcontainer that supported the mach kernel or other BSDs or Hurd or whatever, but it would likely require a lot of work (ongoing work, considering the speed at which Docker is changing over time).
- skrebbel 12y agoThat's what I'm saying. I'm really appalled at the amount of downvotes that I'm getting for having the guts to say "Windows" in a Docker thread, but with a gigantic effort, it's totally imaginable to have a Docker-like system on other kernels than Linux. People who can't imagine that are just, well, unimaginative.
- Ricapar 12y agoBecause your entire post reads like an ad for Spoon Studio. Also, what does "Nowhere in 'docker run -i -t ubuntu /bin/bash' does it say something about LXC." even mean? Docker is built upon LXC features. It needs them to work. LXC not there? It's not gonna work.
- ojilles 12y agoBy that logic, mono should not exist. http://www.mono-project.com/What_is_Mono http://www.mono-project.com/What_is_Mono
- echaozh 12y agoI think if people really want something like docker on Windows or MacOSX, they should go out and write themselves one. For docker guys, obviously, they don't find it an attractive market. Who will run MacOSX in server farms anyway? If you're using Windows already, why not spend more for some fancy virtualization or container like products, say from VMWare? Mono is more like a different implementation of interesting languages. If you like C#, you can use mono to write and run on Linux. If you want to write Windows programs, you won't use mono.
- shykes 12y agoWe actually do support Docker on OSX and Windows :) It just requires a small gateway VM called boot2docker (25MB on disk). It's perfect for development of Linux application on an OSX machine. Typing "docker build" and "docker run" straight from the Mac terminal is pretty magical, you definitely forget there is a VM involved.
- ipedrazas 12y agoI agree and disagree O_0 I agree that "from the distance" it might seem possible to run docker on top of OSX or even Windows, because, you know, it's not only about the LXC but the deltas. This is something that many non-linux people ask me "why not in OSX if it's based on..." and they are right... somehow. I disagree because we know how different the 3 systems are and we know that they cannot come up with a standard for something as simple as CSS much less they will arrive to define a common "LXC" interface. It is not about other kernels offering similar features, but kernels having the same common interface. As I said, it would be great, but it won't happen.
- danudey 12y agoPart of the problem is that it would be a significant amount of work to create and continue to support and maintain it, and all it would get you is the ability to run Mac OS applications inside of a container, and there aren't a huge number of users who want to do that. Most likely people would want to run Linux in their Docker containers, and that requires some form of virtualization.