Hacker News new | past | comments | ask | show | jobs | submit login

It is not (a wrapper around b2d;) I tried to answer the specific question asked instead of guessing what the question is.

The goal is:

Package your Windows app in a docker container, use same tooling you would otherwise use to deploy to a docker engine running on a Windows host

Package your Linux app in a docker container, use same tooling you would otherwise use to deploy to a docker engine running on a Linux host.




Right... what the problem was is that you started seeing people get confused about running Linux containers on Windows and vice-versa. Hence all the questions around that... I guess that wasn't as clear from the announcement as it could have been. One of the main reasons is probably that the people that have been using Docker are Linux folks and aren't necessarily as familiar with deploying Windows-based applications.


This is great feedback, thank you.


I'm still unclear as to whether the linux apps can be deployed to a docker engine running on a windows host, and, vice-versa, whether docker windows containers can be run on a linux host. The announcement seemed to be clear that both of these are the goal. But your GP post https://news.ycombinator.com/item?id=8458603 causes me to doubt.

Is there a missing comma in each sentence of the goal? It seems like there should be one after "use" or after "engine":

1) [after "use"] Package [on a Windows client] your Windows app in a docker container, use same tooling you would otherwise use [on a linux client], to deploy to a docker engine running on a Windows host Package [on a Windows client] your Linux app in a docker container, use same tooling you would otherwise use [on a linux client], to deploy to a docker engine running on a Linux host.

2) [after "use"] Package your Windows app in a docker container, use same tooling you would otherwise use to deploy to a docker engine [running on Windows or Linux], running [the packaging step] on a Windows host Package your Linux app in a docker container, use same tooling you would otherwise use to deploy to a docker engine [running on Windows or Linux], running [the packaging step] on a Linux host.

I added the implications I understood to highlight the difference the comma placement makes. If there is no comma it's pretty ambiguous / confusing to me on which platform the docker engine is running. I believe from this post of yours that I have misunderstood the announcement, and that windows apps will be able to be made into docker containers that can only run on windows docker engines.


No, you will not be able to deploy a Linux app onto a Windows container, or vice-versa.

Containers share a kernel, this would make it impossible. However, with things like boot2docker (25MB Linux distro), this makes it really leight-weight/easy to deploy into a VM and run that way.


> I believe from this post of yours that I have misunderstood the announcement,

I'm sorry to hear that, we will work to do better.

> and that windows apps will be able to be made into docker containers that can only run on windows docker engines.

This is correct. There's also a thread on how, to the user of docker who just wants to `docker run` something, the distinction doesn't really matter in the end


Is the mix of that true as well?

Package your Windows app in a docker container, use same tooling you would otherwise use to deploy to a docker engine running on a Linux host and vice versa? If not initially is that an ultimate goal?


You can do that with VMs + Docker today.

There are no current goals to make Linux executables run natively in windows and vice versa.


I'm not sure whoever wrote the MS press release really understood this. It seems somewhat vague/misleading on the issue:

"Docker will be able to use either Windows Server or Linux with the same growing Docker ecosystem of users, applications and tools." (emphasis mine)

"bringing together Windows Server and Linux"

"making available some of the best images for Windows Server and Linux."

http://news.microsoft.com/2014/10/15/DockerPR/

Of course, it's hard to talk definitively about something that doesn't exist yet.

UPDATE: It makes more sense after reading this comment: https://news.ycombinator.com/item?id=8460164


We understand it, but its really hard to explain briefly. So many people assume Docker==Linux Containers. Throw in virtual machines and start talking about running a Linux app in a Docker container in HyperV on Windows and it only really works with pictures. And that's before you talk about multiple containers running across a public cloud provider. Demos will help.


I apologize for the confusion, thanks for pointing out exactly what caused that. We'll get better over time!


Ah okay thanks. The partnership sounds great and I know it's really freaking challenging but I hope in the future to see:

1. Native Mac OS X support (so Mac Apps can also be in containers) 2. Being able to mix container operating systems with other host operating systems.

If that ever happens then operating systems and their versions would pretty much no longer matter; you could run anything anywhere without compatibility issues. I feel like this is something that has to eventually happen no matter what I'm just always curious what form(s) it will take.


> 1. Native Mac OS X support (so Mac Apps can also be in containers)

Are there Mac servers out there you want to run apps on? Or just consumer apps you want to run on your mac? Curious about the use case!

> Being able to mix container operating systems with other host operating systems.

VMs are that abstraction today. I think we can do better going forward, but still a lot to do with what we currently have planned.


The use case for our startup is: we have lots of compute and graphics intensive services being created and tested on Macs by developers, targeted for Linux Docker instances in the cloud. It would be nice to be able to run these same containers natively on OS X rather than requiring developers to bring up a local hypervisor (e.g. VirtualBox) and a local virtual Linux instance). This would help with both dev and test. Additionally, sometimes our engineers would like to be able to run compute jobs locally and merge the results back into the cloud based system.


Get your developers to run Linux natively?


That sounds like a difficult proposition without your target being able to run Mac binaries.

Having some sort of translation that's not a VM as a part of the distribution mechanism doesn't make much sense, and breaking the portability of Docker comes at a significant cost.

I struggle to see how to make that work cleanly.


I think you're interpreting his words too literally. Nothing that gets deployed to a QA/staging/production system should be built on a developer's workstation in the first place, those specific containers need to come off a build server. The binaries on the developer's workstation would be built on/for OS X, and the binaries in QA/staging/production on the (Linux) build server for (Linux) targets.


> Are there Mac servers out there you want to run apps on? Or just consumer apps you want to run on your mac? Curious about the use case!

Maybe they haven't but I feel like Apple has abandoned the Mac OS X Server so no apps at least for me in that case but I think consumer apps would be a pretty cool use case.

> VMs are that abstraction today. I think we can do better going forward, but still a lot to do with what we currently have planned.

Roger; thanks!


I second the opinion regarding OSX servers; not only is Xserve long dead but the "server" component of OSX is an application that bundles mostly open source applications with a GUI, if I'm not mistaken?

This appears to be aimed at SOHO users and not racks and racks of servers in a data centre.


Is there a public roadmap for currently planned features? I know there was discussion to make Docker more community driven, but I'm not sure if that went anywhere?

I saw this... https://www.docker.com/community/governance/ but couldn't find any more information...


Docker is already pretty community driven. But given the level of impact, we think we need to make it even more robust and have some proposals.

The first DGAB meeting is on 10/28, where we will propose a different way of working based on all of the feedback.

Stay tuned. We'll have a lot on this in the upcoming weeks.


I'm also a bit confused. Let me give you a specific scenario. I have a windows .net application that works with windows 8 (no gui - some server side stuff). Can I package this up as a container and run this on a linux machine that has docker?


That is not currently a goal. It's the goal that you can tell docker - run this application, and it will find (or create!) a suitable host to run it on.


Of course not.




Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact

Search: