TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Docker in Production: A retort

133 pointsby crymer11over 8 years ago

18 comments

carapaceover 8 years ago
I&#x27;ve never used Docker, or containers, but I read about things like &quot;Breaking changes and regressions ... a well documented problem with Docker&quot; and &quot;Can’t clean old images ... a well known issue&quot; and it just seems to me like a crazy thing to try to use and depend on this thing&#x2F;company. Bluntly put they seem like children.<p>So nevermind a retort, what I would like to see is a sane, sensible &quot;business value&quot; cost&#x2F;benefit, pros v. cons breakdown of just what the heck you&#x27;re actually gaining (and losing) using Docker vs. some other architecture&#x2F;methodology. Because absent that it&#x27;s all just hype and kool-aid drinking in my opinion.<p>What would help with the above is if people would document what they are doing with Docker <i>that works</i>, because either they are hurting but not realizing it, or the author of the article is just &quot;doing it worng&quot; and whining about it in public. What is really going on with Docker, et. al.!?
评论 #12881654 未加载
评论 #12883068 未加载
评论 #12881362 未加载
评论 #12882298 未加载
评论 #12884211 未加载
shykesover 8 years ago
Docker founder here.<p>I keep reading articles stating that &quot;the Docker API changes with every release&quot;, but the assertion is never backed by any specific examples. Has anyone here encountered an actual breaking change? If so, I would appreciate you sharing the specifics so we can fix it.<p>Docker is by no means perfect:<p>- I remember that in 1.10 the switch to content-addressed registries meant that older clients could not pull by digest (but all other commands, and even non-pinned pull, still worked). This was not an accidental breaking change: it was the result of a difficult tradeoff. In the end we decided that the benefits of the new content-addressed model outweighed the inconvenience. To guide our decision we used data from Docker Hub to assess how many clients would be affected. I forget the exact number but it was a very small minority.<p>- And in 1.12 we got bitten by a change in how Go 1.6 processes HTTP headers (it became more strict and thus rejected headers from older clients). That was quite simply a screwup on our part.<p>So we&#x27;ve had our share of screw-ups, no question. But lately I&#x27;ve been reading the &quot;breaks at every release&quot; meme more and more. Based on the evidence I have, it seems incredibly disconnected from reality.<p>What am I missing?
评论 #12882419 未加载
评论 #12882405 未加载
评论 #12882291 未加载
评论 #12882346 未加载
评论 #12883055 未加载
评论 #12884511 未加载
Johnny555over 8 years ago
This seems less of a &quot;retort&quot; and more of a validation that most of the issues brought up in the original article are valid complaints.
nickthemagicmanover 8 years ago
I love how the major issue, that both this article, and the original article warn about is: don&#x27;t use docker on &#x27;CORE APPS&#x27;....<p>That says all you need to know about the trustworthiness of Docker.<p>EVEN DOCKER PROPONENTS caution against using it in &#x27;important&#x27; apps....<p>What apps are people investing time in that aren&#x27;t &#x27;important&#x27;?<p>Is there a coffee machine that is ok to use for a docker app somewhere?
评论 #12881623 未加载
评论 #12881419 未加载
评论 #12882718 未加载
CSDudeover 8 years ago
&gt; Again, well accepted principle that “thou shalt not run a database inside a container”. Don’t do it, end of story.<p>Sorry, but this is really a bad advice. We have ran and contine to run various databases inside Docker including MySQL, PostgRedis, Cassandra, Elastic Search, RethinkDB even HDFS with proper user rights and configuration. We can maintain the state just as fine. If your only problem is to move the data, all you have to do is stop, export, tar it, move to another server, just as you would do in a normal server. Docker is not a magic bullet to solve such kind of issues. Yes, Docker might have another problems, but just as you could not run someting with state inside Docker does not mean &quot;thou shalt not run&quot; , there are various ways to manage state. Host, IO can get crash regardless of Docker.
评论 #12881382 未加载
rusanuover 8 years ago
The HN discussion of the article being retorted: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12872304" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12872304</a>
lobster_johnsonover 8 years ago
Re ECR (the EC2 Container Registry), it has one downside that the author doesn&#x27;t mention, which also applies to Google&#x27;s own registry.<p>A Docker registry has own authentication system. So does AWS (and GCloud). So what you end up is one wrapping the other: To access the ECR, you have to run an AWS command to get a token to put into &quot;docker login&quot;. Google has &quot;gcloud docker login&quot; for the same purposes. Both produce temporary credentials that time out, so can&#x27;t be used for long-running things.<p>This means that any tool designed to work with a Docker registry needs to support this particular workflow. For example, this affects Drone [1].<p>It also adds complexity. GCloud is particularly heavy on the authentication complexity side already (compared to AWS&#x27;s comparatively simple keypair approach), and with SSH, GCR and Kubernetes on top it starts to stack up in ways which can make users&#x27; head spin.<p>Straight Docker Hub is refreshingly straightforward by comparison.<p>[1] <a href="http:&#x2F;&#x2F;readme.drone.io" rel="nofollow">http:&#x2F;&#x2F;readme.drone.io</a> (not to be confused with drone.io)
评论 #12882461 未加载
jwatteover 8 years ago
Previous article: &quot;This is nowhere near ready for those who just want to get the job done.&quot;<p>This article: &quot;It&#x27;ll be better in the future, you&#x27;ll see!&quot;<p>The former is verifiable, the latter is a hypothesis.
评论 #12883349 未加载
girvoover 8 years ago
As an example of Docker in production: Expedia are moving lots of their legacy infrastructure into Docker containers. My third-party contracting team that works on projects for Expedia (we&#x27;re brought in so the rules and bureaucracy don&#x27;t apply to use, allowing us to rapidly iterate and experiment in ways the core teams can&#x27;t) have been using Docker end-to-end (local development through to autoscaled production deploys)<p>While there were teething issues, this article does a good job of pointing out the flaws in the original article, I think. It&#x27;s been easier to get our team up to speed on Docker and it&#x27;s gotchas than nearly any other configuration management, server management, et al. systems that we tried!
评论 #12882495 未加载
conradkover 8 years ago
Can anyone comment on how rkt compares to Docker regarding the issues from this article ? And how does rkt compare to Docker in production in your experience ?<p>I&#x27;ve been using Docker in production for a single server website and have had very few issues. I do like how easy it is to reproduce a working environnement with a &quot;docker build&quot; though.<p>That being said, I think that just using Ansible on a server is probably an easier and more reliable solution. Ansible is battle tested and allows to have reproducible environments too.
评论 #12881815 未加载
wickedlogicover 8 years ago
Related question, what happens when a docker images gets pop&#x27;d.... how do you keep it around for investigation, does it get imaged for later forensics? Every time I have asked people in IRL doing docker, they seem to focus on updating&#x2F;patch... on how easy that is and moving on... but that is not always an option for every client. Do you just image all docker images before they get terminated&#x2F;migrated?
评论 #12881913 未加载
smegelover 8 years ago
&gt; So the point is valid, but there are some big names invested in solving it, so I’m optimistic we’ll see some stability in the future<p>And it will still be valid if someone forks Docker. In fact, that would validate the criticism.
pfarnsworthover 8 years ago
Are these breaking changes problems caused by Docker itself? I was contacted by Docker and was considering applying, but it sounds like their engineering management doesn&#x27;t know what they&#x27;re doing. Is this depiction accurate or is it overblown?
评论 #12881973 未加载
pmarreckover 8 years ago
Anyone know why Erlang doesn&#x27;t run well on containerized Docker?
评论 #12884683 未加载
评论 #12881987 未加载
评论 #12881885 未加载
评论 #12883803 未加载
评论 #12884249 未加载
评论 #12882307 未加载
ledilover 8 years ago
if I am using mount Volumens to export my data, can I bypass the aufs&#x2F;overlay implementation&#x2F;logic ? do I need to pay attention only if I don&#x27;t mount the volumes? thx
评论 #12884405 未加载
corvover 8 years ago
Docker seems very limited when it&#x27;s unsuitable to run databases.<p>I&#x27;ve never seen this limitation with other container solutions. What is it about Docker that makes it problematic?
评论 #12883794 未加载
评论 #12883960 未加载
cuillevel3over 8 years ago
Good retort. The original article seemed clueless, the part about aufs was just wrong, the complains about the apt repo exaggerated. Running docker on Debian ancient is kind of brave, though. And software is finished after five years, maybe in the financial industry. Currently development has such a pace, I&#x27;d say after five years it&#x27;s abandoned and replaced.
yawzover 8 years ago
&quot;The internet has been a wash with a well written article about ...&quot;<p>Typo: a wash =&gt; awash<p>I know! The content is more important than the quality of the writing, but it&#x27;s a little surprising to see such a mistake jumping at the reader at the start of an article. We should go back to the first days of the Internet where &quot;updates&quot; were possible. :) I would have loved to suggest an update quickly.
评论 #12883065 未加载