back to article Docker's app containers are coming to Windows Server, says Microsoft

Microsoft has announced new container support in the next version of Windows Server, along with an open source implementation of the Docker Engine. Docker is a way of packaging applications into an isolated and standardised bundle, enabling multiple “Dockerized” apps to run on a single server. Standardisation means that app …

  1. Trevor_Pott Gold badge

    No mention of licensing. I have a fear regarding what that will look like...

    1. Alistair
      Coat

      "A" fear.

      No sir!

      That will be 4 Fears per core please.

      1. Anonymous Coward
        Anonymous Coward

        And you want people to connect to it? That'll be an extra Fear, please.

    2. thames

      I imagine it will be some sort of tiered per app image license, all carefully calculated out to ensure that customers can't save money by switching from traditional VMs to containers. Since traditional VMs and containers are not 100% comparable, this will no doubt lead to massively complex and ever changing license terms.

      Going from the Azure announcement, it also looks like you can't use standard Docker app images on Windows, but rather ones specially built and designed for MS Windows (it is a different OS after all). Since the appeal of Docker (as opposed to vanilla Linux containers) is the availability of standard app images, Microsoft will have their work cut out getting third party developers to build up the app image library for them. It will be like the phone app situation they have with regards to the Windows Phone app store versus the market leaders Android and Apple.

      Your best bet for running Docker on Windows is likely going to be running Linux in a VM on Windows and then running the standard Linux version of Docker on top of that. And perhaps then wondering just what it is you need Windows for.

    3. Anonymous Coward
      Facepalm

      I can't wait to see what happens when each container has its own personal VS Tools, .NET, clusters SxS files incorporated. Actually, I guess I will have to wait since I doubt it's made the first preview. This isn't going to be pretty, licensing included.

  2. Anonymous Coward
    Anonymous Coward

    It's about time they started doing things like this. It's really begun to suck developing on Windows.

  3. Anonymous Coward
    Anonymous Coward

    And in few years it might get to where Solaris has been for years

    1. david 12 Silver badge

      >And in few years it might get to where Solaris has been for years

      You mean a hobby?

      "only for the purpose of developing, testing, prototyping and demonstrating your applications, and not for any other purpose."

      1. Down not across

        >And in few years it might get to where Solaris has been for years

        You mean a hobby?

        "only for the purpose of developing, testing, prototyping and demonstrating your applications, and not for any other purpose."

        That's a pretty cheap shot using T&C from a free download for development purposes.

        There are some people on this forum who seem to take to Solaris bashing whenever an opportunity arises. Fine, everyone is entitled to their opinion.

        There is a lot of Solaris in use in corporate world. It is very solid and reliable environment.

  4. Anonymous Coward
    Anonymous Coward

    "Virtual machines (VMs) have a similar advantage, but are more heavyweight since each VM runs an entire operating system, whereas a Dockerized app is smaller and faster to start."

    Is that true? A Solaris zone consumes no space bar the changes from its clone, eg. VirtualBox inside a zone (with configured 5 VMs) takes up 9MB. Starting and logging in takes less than 1 second.

    1. thames

      Docker is a container management system, so it's using the underlying OS container system. On Linux, I believe that Docker originally used LXC containers, although now they're accessing the container features (cgroups, etc.) directly through their own libraries.

      Docker have also defined an app packaging format to make using "cloudy" type container stuff easier. They're intended to let you "plug" server apps together without a lot of configuration.

      Containers have been available on Linux for years now, although they weren't all that well known outside of people doing cloudy stuff or some types of web hosting. There are plenty of people who use Linux containers without using Docker. Google was one of the companies that did a lot of work on the underlying container system because they wanted it for their own systems.

      Solaris Zones are also containers. If there were a Solaris version of Docker, it would use Zones. In other words, Docker sits as a layer on top of the containers themselves. All Docker is doing is making using containers easier.

      1. Anonymous Coward
        Anonymous Coward

        Got you, thanks for the explanation.

      2. MadMike

        @thames

        -Linux LXC is a copy of Solaris Zones, just as

        -BTRFS is a copy of Solaris ZFS

        -systemtap is a copy of Solaris DTrace

        -systemd is a copy of Solaris SMF

        -Open vSwitch is a copy of Solaris Crossbow

        -etc etc

        I would be very surprised if you can point any Linux tech that is NOT a copy from Unix. The whole concept Linux is a copy of Unix. Everything Linux does, is copying from Unix. Itself is a copy.

  5. Bladeforce

    Microsoft...

    ..always chasing the innovation

  6. Erik4872

    Interesting

    One of the toughest things to do to get a Windows application stack working is to work out and deploy all the prerequisites. I think that as long as an organization can keep its developers under control the idea of containerized applications is a good one.

    Unfortunately, my job is in systems integration, so I get to see exactly what happens when developers aren't controlled, when salespeople sell things that don't exist, etc. DevOps is a good model when your Devs also have some Ops skills. When they don't, it's a mess. In my experience, developers have very little insight about how the infrastructure works once they get their application to "run". Admittedly, we're in an era of infinitely elastic cloud computing (ha ha...) so who cares if the devs build something that requires 6 cores of CPU running flat out for minutes at a time?

    1. Anonymous Coward
      Anonymous Coward

      Re: Interesting

      I think that's just the way Windows developers are in general. I know, I've been one, and worked with many, for a decade or more. More often than not, their mentality (assuming they know what they're doing) is the computer's sole purpose for being created is to run their software.

      I think that stems from DOS, where in most cases that held true.

  7. dogged

    > DevOps is a good model when your Devs also have some Ops skills

    and vice versa. Otherwise I agree. Upvoted.

  8. Anonymous Coward
    Anonymous Coward

    Currently MS dev shops typically leverage MSDN subscriptions in the development space which allows each developer to stand up as many dev/test VMs as required to get the work done as long as everyone touching those VMs has their own MSDN subscription. Because of this I would not expect any licensing changes to cover containers to impact dev shops.

    These dev/test windows VMs are a pain to manage for a large dev shop.

    The use of Vagrant and its HyperV client goes some way to easing the pain of managing those images, but native Windows containers could make things faster and easier in some situations.

    We do use Docker in some of our Linux dev projects and that works well - it would be nice to be able to work in a similar way for our Windows dev.

  9. ok i'll sign up

    Just like Parallels Virtuozzo?

    That required licenses for each containerised application, can't see why this would be different.

    Main limit on Parallels was that if you wanted to install some software in a container that required Kernel or zone 0 access then it simply wouldn't work, everything was required to be in user space, for example you never used to be able to install Citrix in a container (haven't tried XA7 with VDA).

    We had to leave that because of too many cases where some software wouldn't work because of some driver or other and they had to control which Windows Updates you could deploy.

    MS running this I think is a great step forwards since at least Windows Updates will be designed to cater for this situation, though at this stage I don't think it supports any real server operations beyond simple .net / web. IMO should have just bought Parallels and made it more compliant.

    Guess Solaris zones is similar but things are designed to be run in user space anyway

POST COMMENT House rules

Not a member of The Register? Create a new account here.

  • Enter your comment

  • Add an icon

Anonymous cowards cannot choose their icon

Other stories you might like