Can Docker Survive Google? (bloomberg.com)
Though Docker has 400 corporate customers -- and plans to double its sales staff -- "here's what happens to a startup when Google gets all up in its business," reads a recent headline at Bloomberg:
Docker Inc. helped establish a type of software tool known as containers...and they've made the company rich. Venture capitalists have poured about $240 million into the startup, according to research firm CB Insights. Then along came Google, with its own free container system called Kubernetes. Google has successfully inserted Kubernetes into the coder toolbox. While Docker and Kubernetes serve slightly different purposes, customers who choose Google's tool can avoid paying Docker.
The startup gives away its most popular product while trying to convince developers to pay for extras, notably a program that does the same thing as Google's. "Kubernetes basically has ruled the industry, and it is the de facto standard," said Gary Chen, an analyst at IDC. "Docker has to figure out how do they differentiate themselves." It's up to [Docker CEO] Steve Singh to escape a situation that's trapped many startups battling cash-rich tech giants like Google, dangling free alternatives... "They invented this great tech, but they are not the ones profiting from it," said Gary Chen, an analyst at IDC.
Though Docker's CEO is hoping to take the company public someday, Slashdot reader oaf357 predicts a different future: To say that Docker had a very rough 2017 is an understatement. Aside from Uber, I can't think of a more utilized, hyped, and well funded Silicon Valley startup (still in operation) fumbling as bad as Docker did in 2017. People will look back on 2017 as the year Docker, a great piece of software, was completely ruined by bad business practices leading to its end in 2018.
His article criticizes things like the new Moby upstream for the Docker project, along with "Docker's late and awkward embrace of Kubernetes... It's almost as if Docker is conceding itself to being a marginal consulting firm in the container space." And he suggests that ultimately Docker could be acquired by "a large organization like Oracle or Microsoft."
The startup gives away its most popular product while trying to convince developers to pay for extras, notably a program that does the same thing as Google's. "Kubernetes basically has ruled the industry, and it is the de facto standard," said Gary Chen, an analyst at IDC. "Docker has to figure out how do they differentiate themselves." It's up to [Docker CEO] Steve Singh to escape a situation that's trapped many startups battling cash-rich tech giants like Google, dangling free alternatives... "They invented this great tech, but they are not the ones profiting from it," said Gary Chen, an analyst at IDC.
Though Docker's CEO is hoping to take the company public someday, Slashdot reader oaf357 predicts a different future: To say that Docker had a very rough 2017 is an understatement. Aside from Uber, I can't think of a more utilized, hyped, and well funded Silicon Valley startup (still in operation) fumbling as bad as Docker did in 2017. People will look back on 2017 as the year Docker, a great piece of software, was completely ruined by bad business practices leading to its end in 2018.
His article criticizes things like the new Moby upstream for the Docker project, along with "Docker's late and awkward embrace of Kubernetes... It's almost as if Docker is conceding itself to being a marginal consulting firm in the container space." And he suggests that ultimately Docker could be acquired by "a large organization like Oracle or Microsoft."
Kubernetes (k8s) orchestrates containers, one of which is Docker. Docker Swarm is the proper comparison to k8s.
I tried Kubernetes and Docker this year, I went with Docker. Kubernetes is quite a bit more complicated to set up and has a LOT of minor inconsistencies and issues that make it hard to work with out of the box without loads and loads of third party tools (which are really workarounds).
Docker "just works" and although it has a few problems and is not quite as flexible as Kubernetes, they're actually working on fixing them. It for example comes without any built-in SPOF which for Kubernetes you have to figure out yourself (should I use etcd or zookeeper or something else).
All-in-all I think if you're used to working with "beta software" that is built to scale for "the cloud" then go with Kubernetes. If you need to simply set up a container with an existing (or legacy) software stack, Docker seems to be the way to go. Hence Docker, will not go away because enterprise users need it and Kubernetes will be the stack of choice for startups.
Custom electronics and digital signage for your business: www.evcircuits.com
What invention? The idea of containers has been around since long before Docker came along. They were good at refining it and making it popular, but it was on the backs of many others who put effort into it over the years. Why should Docker have the ability to monopolize the market in this situation?
... to the really relevant container isolation features that were implemented in the Linux kernel.
Seriously, I could not care less how many fancy user front-ends are being built in order to use these container isolation features, they aren't rocket science.
I am more concerned about the one big still missing container isolation feature: Writes of meta-data to filesystems cannot be accounted to any control group, and so one evil software hammering a file system with meta-data operations from within a container can still bring the host (and its other guests) to its knees.
Hence with a good scheduler or cgroups the Linux kernel can put fair sharing limits on such operations (and good filesystems will optimize really bad operations away).
Custom electronics and digital signage for your business: www.evcircuits.com
Note that this is true only for Linux. Docker supports Windows, macOS and Solaris targets, and sort-of supports some BSD flavours. On Windows and macOS, they have ported the FreeBSD hypervisor and run a Linux VM. On Solaris, they use Zones for isolation. If the FreeBSD version is ever finished, they'll use jails.
I am TheRaven on Soylent News
Just having a good idea does not give you the right to prosper in the business-world, it is all about execution. It is a market economy and you have to have both an idea and are able to execute that idea better than anyone else that might think they can do better. The company with the idea first, does get a head start - but that is all that they are comes from an idea alone.
You are right that patents have almost no place in software (unless something is truly revolution - like a compression algorithm that through ingenuity is significantly better than all the rest - something that is not obvious).
Let the markets decide.
When I saw Docker in the title I thought this was about khaki pants.
Once Google knocks out Docker, in a year or two they will then announce the purchase of all the Docker IP. Then, in another year or so, they will announce the "end of life" for the project, just they've with many other products.
Actually what happened was
1) Containers were already supported by Solaris, FreeBSD and others
2) Google saw the need for containers in Linux for its own purposes, as a lightweight alternative to VMs
3) Google helped add the necessary support to the Linux kernel, but kept its UI/application level tool private
4) Docker (originally dotCloud Inc) came along and added the UI/application level tool, which took off like gangbusters
5) Google released Kubernetes, which presumably is either #3 or a successor to it
6) Docker, trying to figure out how to make money, decided not to release certain enterprise features (e.g. orchestration of containers across a cluster) as open source
7) Developers started moving to Kubernetes
So Docker did not "invent" containers, even on Linux. They were, however, the innovators in the sense of Apple with the original Mac.
Saying a container speciliast company is viable is sort of like saying a specialist in fileutils (rm/cp/ls/ln) could be a company. The truth is containers are a solid technology because they are relatively straightforward.
Docker started by wanting to provide some alternative usage scenario to the stuff that LXC was providing. The hardest part of the work was the kernel namespaces, cgroups, and device mapper pieces. Docker had the admittedly good idea of focusing on more disposable application images rather than faking virtual machines. They found success because they were open and could be ubiquitous. If they had tried to be closed, an alternative would have sprung up in a matter of months (you could teach 3 college students about the C code to manipulate namespaces and have them craft a rudimentary docker alternative in a semester).
Then came the challenge of finding a path to profitability. Effectively docker was a really good uber-chroot, and that's not exactly sufficiently sophisticated to make a business out of. So they thought "multi-container management will be it!" and make swarm their commercial strategy.
The problem is, when all is said and done even that isn't exactly hard to craft, so Google came along and provided that essentially in their 'spare time'. If they hadn't bothered, Mesos would have fit the bill.
The state of container technology is such that it is actually underwhelming to use, and I mean that as a compliment. It doesn't feel like some big ordeal that warrants consulting and such, at least no more so than dealing with whatever software runs on top of that layer, which is inevitably much more complex than the effort of launching the containers. It's sort of like a mechanic specializing in only changing your oil filter, but only after you've bought all the supplies, lifted your car, and drained the oil yourself.
XML is like violence. If it doesn't solve the problem, use more.
I will give them credit for focusing on integrating device mapper to provide snapshotting and for 'dockerhub' to have a centralized strategy for container sharing.
However, despite those being good ideas, they aren't *difficult* ideas, so it's very hard for them to milk those good ideas for a lot of money.
XML is like violence. If it doesn't solve the problem, use more.
To mention HPC, effectively docker's business plan is equivalent to a commercial scheduler. In HPC those do exist (LSF, PBSPro, Moab) but they are mostly purchased for their UI to non-developer types, and those without that need just pick up slurm. A lot of that is informed by knowing that most HPC jobs are of a handful of off the shelf applications, and tailoring UI around those for non-programmer researchers.
Container management is not in that realm right now, and docker swarm doesn't do things in a friendlier way than kubernetes, so they don't have the benefits.
XML is like violence. If it doesn't solve the problem, use more.
Funny, those are my least favourite parts. The scientific HPC community seems to have invented Singularity, which is like docker but without the annoying bits.
All the Linux distros, cran, cpan, etc. would all like to dispute your claim that a software collection (local and remote) is novel.
I seem to remember that some of the VM systems had template machines you could download too.
Note that Docker isn't claiming that, rather an analyst at IDC, who clearly favours Kubernetes with statements like "they [Google] are the de facto industry standard", when the numbers - quoted by others in previous comments - clearly show they aren't by a long chalk.
But that's just part of being a hit piece: back up the assertion that company X is dead in the water by falsely claiming that said company was a progenitor. People then take that to mean the company itself claims that in order to foment dissent against that company, thus creating bad feeling in the hope of a self-fulfilling prophecy.
Take these bullshit claims up with the so-called "analyst", Gary Chen, not Docker.
"Wait. Something's happening. It's opening up! My God, it's full of apricots!"
Aren't containers inherently a bit bloaty, each container replicating the same things...
Yes, but you are optimizing the wrong problem.
Disk space is cheap, ram is fairly cheap, the overhead is probably less than you would expect and there are ways to reduce it if you actually have an issue.
Managing deployments, library conflicts, update roll outs etc. is expensive. It involves hours of labour, slows down your pipeline and a mistake can kill your service.
Using containers allows you to create a simple, easily testable, reproducible and deployable bundle with everything you care about and nothing you don't.
You're confused because of the shitty summary which was written by someone who obviously has no clue what Docker, Kubernetes, or containers even are.
- Docker is a set of utilities used to manage various Linux container subsystems. It is all 100% open source and free.
- Docker THE COMPANY also makes a container ORCHESTRATION platform, called Docker Swarm, and a container image hosting system, called Docker Hub. These are not open source, they sell Enterprise licenses of these for money.
- Google ALSO made a container orchestration platform. While it works with several types, most people use it for Docker containers. Kubernetes and is free and open source, and therefore puts the revenue stream for Docker Inc. at risk.
- Google DOES NOT make or contribute to any project that competes with Docker containers to my knowledge.