Skip to content(if available)orjump to list(if available)

We Need to Talk About Docker Hub

We Need to Talk About Docker Hub

129 comments

·January 24, 2025

ilaksh

I think they have a valid complaint about that open source program Docker is running and lack of response, but the overall tone seems like they are scolding Docker for not giving away it's services for free.

I have always felt that was strange how quickly people started taking Docker for granted, while simultaneously relying on them completely but also somehow dismissing their core utility as a trivial and unsophisticated layer or something.

It's like they never really got credit from most people on HN or are worthy of getting paid, even though most everyone uses their technology.

eproxus

But Docker said they would give away their services for free to all that meet the DSOS requirements. They did so in the past for this very organization and suddenly pulled the rug and went into radio silence.

The way I see it, Docker can’t both have their cake and eat it. They can’t both get the nice PR and goodwill of claiming to provide free access to open source, and also not do it (and require them to pay to keep using it in the existing capacity).

Fine if they don’t want to provide a free service, but then they shouldn’t be able to claim to do so either.

exsomet

But they did do it. By their own admission in the post, that isn’t really in question.

The implied question is whether or not they should _continue_ to do it in perpetuity. If docker did a cost:benefit of the program and decided it wasn’t worth it (maybe they didn’t get that much good PR after all?) it’s their prerogative to end it.

There’s a perfectly valid gripe about the lack of communication, just as a matter of courtesy; but again, taking from their very own post, docker (the company) has historically burned their hands on proactive communication before.

Ekaros

Sometimes I might agree on possible take that no PR is better than bad PR or any PR. Just quietly dropping whole thing could be least bad publicity.

saurik

The problem is that people believe such promises in the first place :/... if someone builds a fully-centralized ecosystem that has a network effect benefit of any kind, it would be dumb to believe they are going to do it forever without it becoming horrible, as eventually the system will become valuable enough that the people who control it will realize a tipping point has been reached that allows them to play the good old "I have altered the deal: pray I do not alter it further" card on the user community without enough ramifications.

And yet, people fall for this over and over and over again, as the centralized system tends to be slightly easier to use or slightly cheaper (but only due to subsidies) or comes to fruition slightly faster than a decentralized protocol or even a centralized system run by a non-profit could (though the latter still failed to save us from OpenAI... ;P but like, imagine if Docker Hub were pledged to and run by the battle-hardened bureaucratic non-profit, such as the Apache Foundation, with a long track record of not extracting value from this sort of situation).

> All of this has made us seriously reconsider what we do going forwards; we obviously won't pull all our images off Docker Hub, nor is it sensible to just stop pushing new images as it will seriously impact the many users we have who pull from there...

When you hand someone else control over how to find your content -- using central registries or walled gardens, both of which always now insist on controlling the URL of your content, you've given away all of your negotiating power for when the deal is eventually altered. It should be obvious before you ever get into this situation that, one day, you will get screwed; and like, for a service where it is clearly more expensive to host it per user than anyone would ever pay for it, there is absolutely no possibility that the situation is going to continue forever without careful planning and attention to monetization.

Nothing ever has to be built this way, BTW. I developed Cydia, the alternative to the App Store used on jailbroken iOS devices, and I explicitly did not host software myself: I set up a federated ecosystem based on APT/dpkg where people had the option to self-host their software or could work with larger (ad-supported) repositories (which I refused to run), and (and this is key) there was a seamless hand-off if you later migrated between repositories and you could even be hosted by multiple at the same time. To do this, though, you have to go in being a bit humble and, explicitly, not only reject dreams that one day you'll own the ecosystem, but work every day to prevent yourself from having that kind of unilateral power in the future.

Imagine if GitHub or Facebook Pages actually worked like a Web 1.0 web hosting company (which, by and large, they are, only with single sign-on for comments/reactions and an algorithmically-sorted central feed aggregator): you would expect to be able to buy a domain name and configure a CNAME for your account, and, suddenly, the service loses much (not all!) of its power to later move on to the extraction phase... of course, services never want to do this, and users who like being "the reason why we can't have nice things" will even argue that the most minuscule of downsides such decentralized (distributed or federated or democratic or merely regulated) systems might have are unacceptable and we should go all in on the centralized ecosystem.

https://youtu.be/vsazo-Gs7ms

^ A talk I gave in 2017 at Mozilla Privacy Lab on the numerous failure modes of centralized ecosystems, chock full of concrete cited examples -- every slide after the title slide, including even my "who am I?" and "any questions?" slides, is a screenshot of a news article from a reasonable source -- of the myriad situations people like to claim somehow won't ever happen --or at least wouldn't happen this time, as somehow this time is different than all the previous times-- actually happening :(. And like, if I were to do it again today, I would just have even more examples :(.

thunky

> but the overall tone seems like they are scolding Docker

I didn't find the article to be scolding or offensive in their tone. It's just a straight reporting of their experience and (imho valid) concerns.

bayindirh

FWIW, I have a personal Docker license, but I avoid containers where I can (because containerizing everything by default has its own set of problems). I use containers as "very fat, stateless" binaries which are run when I need to do something (generate a webpage, take backups, etc.).

People got Docker for granted because startups and modern sysadmins absolutely despised installing software on physical or VM servers. On tech side, Vagrant was making VMs easier, plus BSD had jails, and Linux needed something similar. So they found a legit gap in the stack, and timed it well.

Who wants to spend 3 hours to install a service while they can make it appear out of thin air in 40 seconds and deal with the shortcomings and consequences later, or containerize an application, disregard hard requirements and tell "just add an X container in front" (I'm not telling that this is good, BTW).

So Docker spread like wildfire and graduated to invisible/boring tech in 3 months straight. Then when the people demanded money from developers for what they built for them, people grabbed the forks, or created literal forks of the software. I support the latter approach, not the former one.

However, if they advertise a DSOS program, they should do what it entails. Be transparent, fair and open about it.

curt15

Containers took off because it was the easiest way for developers targeting Linux to get a predictable runtime environment. It freed them having to worry about the differences between Debian's OpenSSL or Red Hat's OpenSSL libraries or even the differences between different versions of a distribution. You don't see nearly the same level of uptake among Windows developers because not only is there only one Windows API for everyone to target but also Microsoft is willing to bend over backwards to preserve backward compatibility.

Containers also predated "modern sysadmins"; prior to docker, Google ran its prod software in chroots for the same reasons as above:

>The software run by the server is typically run in a chroot with a limited view of the root partition, allowing the application to be hermetic and protected from root filesystem changes. We also have support for multiple libcs and use static linking for most library uses. This combination makes it easy to have hundreds of different apps with their own dependencies that change at their own pace without breaking if the OS that boots the machine changes.

https://www.usenix.org/system/files/conference/lisa13/lisa13...

mikepurvis

Some have argued that the rise of containers correlates with the rise of Python, explaining that containers are particularly well suited to packaging up the dumpster fire that any moderately-complicated Python app quickly becomes.

Of course now we have Rust and Go, but being able to shove your statically-compiled binary into a tiny scratch container and have it cooperate with orchestration systems is still a pretty nice abstraction— just harder to say if it would have been worth it had we not had Django apps needing to be made deployable first.

ahoef

I started using it to get rid of all the moving parts of library versions, moving Debian releases, etc. Everyone has the exact environment locally and there is no confusion.

It has its own flaws, but it was so much better than the alternatives.

skywhopper

Nah, this is a bad take. There’s no excuse for them to be unresponsive to active users. Even from a purely profit-focused point of view, if Docker doesn’t want to give away free stuff, they should be encouraging/begging/cajoling users like this to convert to a paid plan. But they’re just ignoring them instead?

akudha

I don’t understand why companies/people don’t respond. Apply for a job, they talk to you for months and stop suddenly. Go on multiple dates, then the person stops responding. Etc. A simple polite “we’re not moving forward with your application” email is better than silence.

How hard can it be to show some basic decency and courtesy?

tuyiown

I think you're underestimating how explicit rejection triggers awful behavior to seemingly way too many people, so one can be wary of releasing it, plus the fact that rejecting others is not easy for people, automating it seems dehumanizing, so the things stays as they are, so silence it is.

I've been related several times about people that wanted explicit reasons of why they've been rejected, and ending up mad at the (perceived as dishonest) hard truths they've been told, and anything said delicately can be dismissed, seen as cryptic or even displayed as hypocrisy.

Courtesy is hard, and all are not well equipped to see it when it's given.

joshstrange

This 100%.

I managed a hiring process last year (my first) and from the outset I wanted to make sure I let every applicant that we talked to know if we had decided to pass. It was a lot easier said/thought than done.

That email is horrible to send. My stomach dropped out every time I hit “send”, for exactly the reasons you stated. I dreaded the replies which often included some kind of “Why?” question.

I completely understand where the candidates are coming from. They want to know what they did wrong and how they can improve. On the surface this seems like an easy thing to do, but in my experience, it’s more like opening a can of worms. How do you tell someone “I’m sorry, you’re too junior, try again in a few years” or “your entire personality was off-putting/rude” or “you spent an inordinate amount of time in the interview tying to convince me I was wrong about tabs vs spaces and even sent me a follow up email citing more reasons” or “You told me you worked with PHP 6 when I asked you what version you had used” [0], or “you couldn’t remember if you used Angular 1 or 2+” [1], or “you told me you had a great memory then proceeded to say ‘I don’t know’ and ‘I don’t remember’ to 90% of my questions”…. The list goes on

When sending a rejection letter the best case scenario is that they say “thank you” and move on (or don’t reply at all). Worst case scenario, they start asking follow-up questions which I feel obligated to respond to, they get irate, and/or they attempt some kind of bargaining/arguing. I’m not going to say I’d never do any of these things myself (however unproductive) but it shocks me that some people think they can change your mind by arguing about why you passed on them.

It’s all very uncomfortable and feels like you are navigating a field of land mines.

[0] PHP 6 never was released, it went from 5->7, though you can find books on “PHP 6” because they were printed before it was clear the version was going to be skipped.

[1] Angular 1 vs 2+ is essentially a completely different framework. Anyone working in web tech should be aware of that fact.

nickjj

I would much rather get an honest answer in any scenario, no matter what it is. There are people out there who would take that feedback and reflect on it in a positive way.

How else can you improve or be mindful of things in the future if you don't even know what happened or what went wrong?

I sort of feel like the people who don't give honest feedback or ghost aren't trying to protect anyone's feelings or are avoiding conflict. They themselves have something going on internally that bothers them when it comes to giving or receiving feedback. They are maybe letting unrelated previous experiences dictate their current life and decisions.

So now you have 2 types of people. People who want honest feedback and people who never give it. You can't force either one to do the other thing so we're always left with 1 side feeling unhappy.

It doesn't make sense to me that this is how most folks are ok with operating.

g-b-r

Just as in personal relations, sending a final message rather than ghosting can be uncomfortable, but that's not an excuse not to do it.

If/when you don't want to interact further, just say it (hopefully stating the reasons, such as that the hiring process is imperfect, but the company can't devote infinite resources to it); after you did that it's completely fine to ignore further inquiries.

arcbyte

You're 100% right.

Still, i think we should expect better of companies and candidates on both ends.

pbronez

Yes. People don't like being confronted with their shortcomings. Cultivate humility - you'll learn more.

twiceeaten

I agree only in part. Specifically, I agree that rejection brings out the worst in people and sometimes it's better to not engage in follow-up conversations about rejection. I have interviewed my share of problematic applicants and we should not make excuses for employers to behave badly due to bad applicant behavior.

Courtesy starts with the giver. If someone chooses to not be equipped, then you have done your job by attempting courtesy, nothing more is required.

While there's a lot of awful behavior, I have found complete silence (no initial rejection) triggers worse behavior. For example, silence leads to people constantly reaching out, rightfully wanting to know status. Moreover, it greatly encourages the psychotic people to bombard you with craziness via any means of contact. For that reason, an initial response that a person is rejected is enough typically.

Courtesy is not hard and saying so is concerning. While people may have different reactions, a simple sentence is a courtesy and a thank you, nothing beyond that is required. Still, I admit reading this site sometimes makes me think basic humanity is a challenge for many people. Unfortunately, those people seem to be in charge of hiring at many companies.

All you have to do in a job context is respond at least once - thank you, but no. If the other person does not see a simple email as courtesy, that is their problem. A response is a universal courtesy, no response is a universal insult. I can understand not wanting to engage further, however.

No response at all is also demeaning. It takes seconds to formulate an initial rejection response. If someone presses you, simply reply with that dreaded canned response + simply use their name. If you want to further personalize things in either case, you pick 1 detail you remember to sound more genuine, which for a functioning human should be quite easy.

If you want something more dry in a follow-up, you can say that for legal reasons, you are not allowed or comfortable discussing further, but you wish the person luck. That covers all the normal people, and for crazies, you have no choice either way but at least this has a chance of getting them to go away. What you are saying is that people are not even worth seconds of your time, especially people who potentially invested hours, weeks, or even months in the process. I would hope any reasonable person is above this.

Lastly, a response is important because it allows people to prioritize and further their job search. If you keep someone hanging, it can have huge implications that I should not have to explain. There are many other problems it can cause as well. As an example, I once applied for a job I thought I wanted because the company confused me with someone else and their SOP was silence. They stopped responding to my inquiries which insulted me so much, I rejected their subsequent offer when the mistake was caught. Another example - a company scheduled interviews for me and just didn't show up, making me have to leave my wife alone in the hospital at the time which I only did because my job search was that important at that time financially.

Honestly, I'm so tired of the attitude of companies and people on here validating unprofessional and awful behavior. If it were legal and without issue, I'd make a list and publicly shame. The only redemption is that when someone can't even be human enough to respond to you, working at their company would be a miserable experience. Still, that does not help when you waste weeks, months, or even years going through this nonsense with ego tripping weirdos doing hiring these days, ghost jobs, and complete psychos. I've been interviewing candidates for over 20 years and I do not say this lightly that the current process is disgusting, awful, and unacceptable at a disturbingly large number of companies.

cjbgkagh

I think the main problem is lawsuits. Say that someone is too junior or unqualified and you may end up in a lawsuit having to prove it - especially if they’re in a protected class of some sort.

I live in a place where I don’t have to worry about such lawsuits so I did give negative feedback, and most frequently the kind of people who apply to jobs they are obviously unqualified for are not the kind of people who take negative feedback well. They would rather argue with you.

The public sphere has been polluted to such an extent that these days I no longer openly advertise for jobs and instead go through contacts, luckily I don’t need many people so it remains a viable approach.

twiceeaten

Lawsuits are an issue, I highly agree and only explain silence for repeated contact, not for initial rejection notification. I have experienced everything you said and taken a similar approach in the past hiring within my network.

Regarding the larger issues, I have diffused the legal issue in the past to some degree simply by stating, "Legally, I can't discuss this with your further, however I wish you luck" or less directly, "Thank you for inquiring. As a policy, we don't discuss rejections, however I wish you luck." Many people will simply fold, while the crazy people are going to be crazy no matter what, but at least you tried to address people who are genuinely asking for feedback in a polite way that doesn't forever tarnish you.

I have started going out of my way to spread the word in my network about certain companies who behave poorly in the hiring process, however, even if it did not involve me directly. I will not do business with these companies, use their products and libraries (when possible), and recommend against colleagues joining when they come to me for advice, recommendations, or feedback. I encourage others to actually hold people responsible for sh*t behavior. This of course goes both ways for employers and applicants.

stronglikedan

For personal matters, I prefer ghosting (receiving and giving). It's better for everyone in the long run. Just rip the bandaid off. The person has made up their mind, so discussing it just prolongs the inevitable.

For business matters, it's just common courtesy to not leave someone hanging.

yjftsjthsd-h

> Just rip the bandaid off.

But you're not ripping the bandaid off, you're ignoring it and hoping that it will fall off on its own.

concerndc1tizen

To some people, rejection is uncomfortable.

And rejection is noisy and wasteful. And companies can't really be honest in this situation anyway, so it's pointless.

So I like the Hollywood approach: Don't call us, we'll call you.

g-b-r

So far as you say that upfront

twiceeaten

The problem as you imply is that no one does this. Every time I've heard about, witnessed, or experienced silence, it is with a promise of contact that never comes. Browsing various job related sites and even Glassdoor (for what little it is worth), you can see many people with these exact complaints.

jillesvangurp

There are a few good reasons to avoid docker hub in production environments:

- free usage is capped and throttled if you exceed download limits.

- some cloud environments don't pay for docker hub access and it's easy to exceed those limits collectively. I've seen that happen on telekom cloud a few times.

- you can configure docker on your machine to use a mirror. For example https://mirror.gcr.io. Or you can setup your own mirror of course. Most cloud environments do this for you.

Using a mirror means you can continue to use images published (by others) to docker hub. And since you don't really have much of a choice about where others publish their images, using a mirror is a good workaround.

IMHO the docker solution of simply prepending images with your registry domain is actually a decent practice. I don't get websites I browse from a central repository either.

For your own stuff, you don't really need to use dockerhub. You can just run your own repository, which isn't that hard or expensive. But of course, an empty repository isn't that useful if you mainly use stuff made by others.

Btw. docker is not unique with having a corporately owned central repository of software. Annoyingly, maven central is run by Sonatype and their process for pushing stuff there is mildly convoluted. It's stupidly easy to use a simple aws or gcp bucket as a maven repository from gradle (I do this for some of my OSS projects). Or any old server with ssh access and a web server. Github also offers repositories for a lot of stuff. But getting your library on maven central just means dealing with their bureaucracy (Jira driven!) and jumping through a lot of hoops. I've been wishing somebody would beat some sense into them or would setup a (vastly) easier to use public repository for years.

It's nice that companies offer public repositories of stuff. But it's inconvenient when they start policing/taxing access to that or put up barriers to get stuff in there. Mainly because they tend to host the vast majority of interesting dependencies that you might want to use.

IMHO the ownership of such central infrastructure ideally moves to some kind of foundation with proper governance rather than some company. For docker that could be the Linux Foundation. It's not clear to me why that responsibility lies with a tiny company for the Java ecosystem that makes a rather convoluted product for hosting jar files which at this point isn't actually that widely used since there are plenty better alternatives. Nothing against them but why delegate such a big responsibility to them?

Kovah

I'm absolutely stunned by all the negative comments in here bashing the Linuxserver project. "Run your own registry", "you get everything for free be grateful", and so on. What the hell is wrong with you?

They are a couple of guys trying to make software more accessible to thousands of people. Indeed it's a large project and one may question if they should get _everything_ for free. But that's not the point of this article. The article is about the absolutely horrendous behaviour of the company running Docker Hub. And I totally relate to this as I applied for a project of mine, too. How they run their open source program, it feels nothing more like presenting themselves as the big open source supporters, but in fact they make it extra hard for those who already maintain software for free.

concerndc1tizen

> the absolutely horrendous behaviour

They've ignored their application. That hardly qualifies as "horrendous".

Don't you believe in freedom?

It's fair to criticize them for monopolistic practices and creating a closed ecosystem. But if you want social goods (enforced through social norms), then the company should be publicly owned, not private.

skywhopper

Dude, your posts are filled with wild non-sequiturs. “Don’t you believe in freedom?” What?

concerndc1tizen

Dude,

I'd argue that the people in these comments are suffering from cognitive dissonance.

I see people presenting two beliefs:

1) enterprises should be free to offer the services they want, to who they want

2) consumers have the right to bully enterprises that don't offer what they want

And that's fine. People can have different politics.

But IIUC, these two beliefs are mutually exclusive.

Dictionary for the illiterate:

- Bully: when you use peer pressure, through public exposure, to induce negative consequences, as a political strategy, for furthering an agenda, and getting the victim to align with your interests.

jeroenhd

Eh, ignoring a project isn't "absolutely horrendous", it's a little dickish at worst. They're free to accept or ignore any charity, and they're free to ignore requests for renewal. I don't know why they're not communicating (maybe they're trying to have less details publicly available for the inevitable post this would generate?) or why they'd be dropping this project entirely, but it's not like they're sending them cease & desist letters.

Many containers hosted by this project have the sole purpose of pirating media, so maybe it's not even Docker's choice to ignore the project. If they're being sued for providing piracy tools (and are smart enough to shut up about it until the lawyers clear them) it'd be stupid to explain what's going on and why. Last thing they'd need is for the copyright lawyers to make it seem like Docker is directly in kahoots with the piracy ecosystem. I'm not condemning piracy tools here, but everyone knows what you should expect if you're hosting piracy adjacent services.

It was pretty cool of them to offer DSOS to open source projects but I guess that's coming to an end if they don't even bother replying to their form anymore. But it's not like Docker is known to the public for giving other projects free hosting, the only reliable free hosting Docker provides are the containers they put under their own name spaces. It sucks people fall for the openwashing these large technology companies do, but I think people have unusually high expectations of Docker here.

Kovah

Fair point. I only know Linuxserver from various open source projects that don't offer containers on their own. I guess you mean tools like Radarr and so on. I guess it's okay to assume that someone might by offended by that.

What I specifically meant by horrendous was not only that they ignore one project. Unfortunately, I made similar experiences with my little project. They don't reply to emails, the application process is mediocre at best and the last time my projects' org got a renewal for the program, they mixed up accounts and first wanted to charge me for a team plan. Thank god someone noticed this on their side and fixed it. But all in all, a subpar experience. My expectation would be that someone at Docker takes care of this in an honest and professional manner. As of today, this seems to be not the case.

TZubiri

"absolutely horrendous behaviour"

If the phrase absolutely horrendous behaviour maps to this triviality instead of actual atrocities, you have gotten too deep and lost context.

I don't want to discredit any small issues by putting them into global perspectives, but there's several wars as we speak, maybe just tone down your alarm levels if you want to be taken seriously.

concerndc1tizen

If you don't like it, then why don't you use a different provider?

If you want free stuff, is your strategy to smear them into giving you more free stuff?

Storage, compute, and traffic, isn't free. You've been the beneficiary of charity for years.

Yes, the open source community has relied on this implicit charity as a parasite, by exploiting whatever free services they could. And now we're paying the price, as you say, by having DockerHub as the default provider.

My suggestion is therefore that we need independent solutions, that are fully funded as a charity, and stop relying on freemium services from corporations that fundamentally don't care about the public good.

sealeck

This is really a question of framing. The other way you can look at it is: Docker has benefitted from a community adopting its products, and developing software that makes Docker more useful. As someone who sells Docker services, you benefit from a greater market size.

It's like how WordPress have benefitted from people authoring plugins – even though wordpress.org has hosted them for "free", this has been good commercial sense as it allows them to sell more WordPress.com to people.

kristianc

> It's like how WordPress have benefitted from people authoring plugins – even though wordpress.org has hosted them for "free", this has been good commercial sense as it allows them to sell more WordPress.com to people.

With seemingly similar rent-seeking behaviour when Automattic decide they’ve had enough and want to put a toll on that road…

concerndc1tizen

And once those services are fully developed, and the market is captured, do they still need to provide free services?

Isn't compatibility issues a major problem for alternative registries?

yjftsjthsd-h

> Isn't compatibility issues a major problem for alternative registries?

Er, is it? I've used a handful of different registries and never hit anything that even resembled a compatibility problem. Have I just been lucky?

keybored

With your framing this looks like the free/“free” initial use of such a framing is similar to free accounts on new social media platforms. In that case the motivation is super clear: grow the social platform since a social platform with few users is useless. Then when they get big enough they start charging. Once you’re already locked in via all sorts of connections.

Again in the case of social platforms: for the longest time this was framed as user entitlement if anyone didn’t like it. Which failed to see the other side. Yes, the users wanted something free but the company also got something back from the user.

We could go back and forth on details like the service growing to such a point that the free service becomes too much of a burden on them. But consider the case when the free service was treated by the business as an investment for $X which was supposed to carry that cost until the proverbial rug could be pulled from the users without a mass exodus—grow your user base until you have enough of a mass to demand a considerable escape velocity in order to be avoided.

Again, arguments could be made either way. But it is definitely not as simple-cut as an altruistic service versus selfish users/consumers.

I’m sure someone versed in Economics could summarize the above in a phrase or a sentence.

null

[deleted]

TZubiri

"Docker has benefitted from a community adopting its products,"

It takes a whole lot of mental gymnastics to argue that a provider of free services is actually the one benefitting from that interaction, and not the other way around.

Go ahead and build your systems on free dependencies like WordPress and Debian, but just get real and don't pretend that you are better than professionals that build business relationships and actually pay for their software dependencies like RHEL and Webflow.

p_ing

Docker was in serious financial trouble in 2019 after the community had been benefiting from it's products for years by that point.

sealeck

Would you say Github benefit from open source developers using it? (And if not, why do you think they provide the service?)

These people are maintaining free Docker images for Docker users to use. They're not charging for this, and Docker benefit massively from these images being available!

saagarjha

I mean, paying for your software dependencies doesn’t automatically make things any better.

undecisive

Here's a tiny bit of missing context.

This blog is for LinuxServer.io, who build repositories that produce free docker images, for free, paid for by donations, for a bunch of open source software. By the looks of things, they are literally a charity.

Conversely, their complaint is not "aren't docker rubbish? Let's mob 'em" - it's "heads up, something seems to be wrong and docker are not responding to anything, chances are there's trouble brewing - we're gonna start looking around and if you're depending on this, you should too"

I would say calling "the open source community" a "parasite" because they're using free services from companies that have benefited greatly and earned a lot of money from things given freely by the open source community seems weird.

Seems like a lot of people on here very concerned about those poor struggling corporations, and their exploitation by those evil open source charities. Feels like an evil political wind is blowing, wonder where that's coming from?

concerndc1tizen

> If you're reading this and you work for Docker in some relevant capacity, give us a hint as to what we're supposed to do here, we'd really appreciate it.

It sounds to me like their ultimate goal is to get more free stuff.

And I'm saying: open source should not rely on benevolent corporations.

And writing articles to beg for services is not a healthy strategy in the long term.

Instead: use open standards, don't rely on centralized infrastructure, create a marketplace for providers, and create a better future. Stop maintaining the status quo of indentured servitude.

undecisive

I love how you intentionally cropped off the first two words of that sentence, try to make out that their 30 word side note was actually the whole point of the 800 word article, and you STILL didn't manage to make them sound as malicious as you wanted to.

"give us a hint" - "Stop begging!"

As I say, you're clearly coming into this with a strong unjustifiable bias, I can tell because you're forced to use words like "smear", "parasite", "exploiting", "beg", "indentured servitude" - it's a cover for the cognitive dissonance.

But if you genuinely would like a discussion about the pitfalls of the funding models of open source, yeah it's a reasonable question that has never been satisfactorily answered. There are whole PHD projects on the subject, and nobody's cracked it. Giving money to open source projects is difficult for many reasons - ranging from tax treatment to geography even to legality. Providing services is somewhat easier, but in many companies in some countries even that comes with geopolitical legal issues. Marketplaces only work if you have something to barter, and if you would like to contribute to the freedoms you enjoyed, it's hard to make that work in a marketplace model, not to mention that even providing people the option of donating money for a product comes with overhead (legal / technological / service / financial network / server etc).

If you would like a discussion about ensuring abstractions over the services you use, sure, I'm here for it. Of course, it's hampered by a lack of consistent interfaces, and in some cases interfaces that ensure they can never be smoothed over. But that sounds like a cool open source project - in this case, I guess it would be an anyhub kind of deal that can serve images for different use cases, paired with a DSL for defining a resource (that can generate a dockerfile / docker compose file, in docker's case). Of course, serving images isn't free, but you've cracked the problem of funding models of open source, right? Right?

And you mention indentured servitude, loaded though that phrase is, it's also a poor analogy. Tax would be a closer match. You depend on open source and make money off it? Great. Giving open source a cut of that pie in some way seems the morally right thing to do. How you do that is up to you, but telling people they can use your service then pulling the rug while simultaneously ghosting them? That sounds kind.

You know what, I think you're right - it's so much easier to lambast someone for daring trust or daring to express concern than it is to do anything meaningful to improve the landscape.

skywhopper

You are really going off the rails here. Asking for a response is eminently reasonable when Docker advertises that they will give away free service.

bayindirh

You're framing this wrong.

They don't whine because they didn't get DSOS status this year. They are confused because they didn't get an answer.

They want communication, not free cookies.

concerndc1tizen

> we were preparing for our annual DSOS renewal. This process is abysmal, there's no way to apply to roll over membership, or even a renewal process per se, you have to reapply from scratch every year using the same badly-designed form ...

It sounds more to me like those who run DockerHub aren't that interested in giving away free service.

bayindirh

They (Docker) might not be. Docker Hub is their turf, they can do whatever they want (and face the consequences).

However, the post doesn't say that LinuxServer want free service. They say that they had the opportunity, and they try every year. From what I read, they're perfectly fine with a "No, you are not selected this year".

Being decent and being interested in giving a free service are mutually exclusive. You can provide free service while being mean, you can deny people from your free service while being polite.

The people who wrote this post is only interested with the "polite" part. So, they can see what they're at and act accordingly (reapply, pay, or find other alternatives).

Requesting communication is not a bad thing.

skywhopper

You’d think they’d at least try to sell to people who are asking for their services.

surgical_fire

> the open source community has relied on this implicit charity as a parasite

Very loaded language you use, when, typically, commercial software relies on Open Source software and community efforts as a parasite.

exe34

Projection allows one to set the frame of the debate, if you then accuse them of parasitism, it doesn't carry the same weight, as they've already used it against you.

surgical_fire

Except I am not projecting anything, and I didn't accuse OP of being a parasite.

I am just describing a factual state of things of how companies relate to Open Source Software.

plagiarist

These Docker "parasites" are providing dozens of free containers for Docker's customers and still have the audacity to request an email correspondence about their sponsorship status.

thomasfedb

Well, by their own amount of events they have and are - they’ve changed their default registry.

If Docker advertises an open source program, it’s completely fair to be critical if they’re not delivering as advertised.

whois

Your response feels in bad faith. Docker is the default registery. That gives them n amount of responsibility. Not to mention organizations should be accountable for their bad behavior. Don't give them a pass.

concerndc1tizen

Your position is one of presumed entitlement, where you rely on services being provided because the outcry of not doing it would be costly.

So you're right in that sense. It's essentially blackmail: free services in exchange for staying silent.

I think it's unhealthy.

And I argue that we need properly funded, independent services, with clear motives.

robertlagrant

> My suggestion is therefore that we need independent solutions, that are fully funded as a charity, and stop relying on freemium services from corporations that fundamentally don't care about the public good.

We had that already, but none of them invented Docker.

> If you want free stuff, is your strategy to smear them into giving you more free stuff?

They seem happy to pay; they were complaining (validly) about the process of renewing DSOS.

8organicbits

> none of them invented Docker

I think that depends on what you mean by docker. Lots of similar things existed before, just less formalized and less centralized.

robertlagrant

But there's a reason why Docker was so successful - a single file that could define a deployment and tooling to build it into a runnable artefact was incredibly useful. From the future tech useful.

If you can name these other similar solutions created by charities I can probably me more specific.

larntz

Which makes me wonder, would docker have gained traction if they didn't offer free registry services?

namaria

Free resources are not charity and using them is not parasitic. Without the sharing ethos there would be no modern software.

Those who can grasp the complexity of needing an ecosystem for modern technology to exist foster it and those who think strictly along the lines of profitability and short sighted morals are the unwitting beneficiaries of things they don't understand.

ricardbejarano

Run your own registry.

TZubiri

Or run no registry. Here's a port from a Dockerfile to just a vm:

FROM Debian

CMD apt-get install thing

CMD curl blabla/install.sh

Pretty much converts to:

aws-cli ec2 launch-instance

ssh user@server apt-get install thing

ssh user@server curl blabla/install.sh

In general, everytime you dispense of a high level abstraction, the solution is not to replicate the high level abstraction, but to build directly at a lower level abstraction.

If you want to replace burgers, just buy a slab of meat and put it in the fire or bake your own bread. You don't need to make preservants and buy artificial sweeteners, etc...

planb

We're not talking about Dockerfiles here, but about images from a registry.

How many times faster and more reproducible is "docker run myimage:1.0.0" compared to your solution?

TZubiri

The thing with containerization is that it is sometimes used to virtualize an OS and sometimes to virtualize processes.

My containerless worflow, when compared to typical container workflows, usually involves splitting some of the responsibilities to the OS virtualization layer and some to the process layer.

For example, if I have a testing server and a prod server, to test a change I just git push to the testing branch. Which is quite fast and reproducible.

Yes in theory there can be side effects and leftover effects from the previous version, but I am also a competent programmer and have the capacity to ssh into the server to debug, so it's not a huge issue. So bottomline I don't virtualize as often.

To take a wildly different use case of containers, if I want to have two different systems on the same machine, I just run the two different systems as processes? You know there's a process for a sql db and an http server in the server and we are fine. You can even use users for more stringent encapsulation and security guarantees, it's fine.

But since we are talking about registries, I focused on the third distinct use case deployment automation.

The whole details on how to live without docker (and docker registries by extension) won't fit a hacker news comment, but be assured it's 100% possible and you'll be fine.

I'm focusing on docker as a whole because if I can prove that you don't need Docker, by extension I prove you don't need a docker registry. It's an overkill of an argument to show how ridiculous complaining about your free docker registries is. You are out here complaining about a problem with your Docker registries, while I'm a chad who can just axe Docker like it's nothing.

bartread

Careful now: people will start accusing you of NIH.

But I fully agree with you. Likely what you need is a tiny subset of the capabilities wrapped up by the higher level abstraction, so implement them directly.

Over time you may find you need additional capabilities (although that's far from a given) and, if and when you do, you'll need to make decisions about whether to implement them directly, or wrap everything in a higher level abstraction (or use a third party abstraction).

The point is that if you ever do need these additional capabilities there's a good chance it's because you've been successful enough to enter "good problem to have" territory because you didn't waste time getting distracted by them earlier on and instead chose to focus on work that enabled that success.

marginalia_nu

If you wanna NIH you can just build your own docker. It's just an abstraction around some newer syscalls for process isolation. There's really not much magic to be found if you look into how it's done.

You can probably have a working prototype up in a weekend if you've got some systems programming experience.

sherburt3

Just look at how much shorter and nicer the docker example is compared to the VM example. Also first example runs locally on any computer with docker or podman or whatever installed, second example exclusively runs on AWS.

TZubiri

"Just look at how much shorter and nicer the docker example is compared to the VM example."

Is this trolling? Who gives a shit? It's 3 lines that will be buried deep in the stack. You can even do it manually Gasp. and write the steps with screenshots in a word document or an email.

"lso first example runs locally on any computer with docker or podman or whatever installed, second example exclusively runs on AWS."

So we have a multiple GB full vendor neutral system that runs on any provider with support for a Free Operating system, or even your own machine. And you are getting hang up because the process for deploying that vendor neutral system is itself not vendor neutral?

This is what I was writing about getting hung up on the 1% last mile. It's going to draw so much effort to convert that last mile into a fully compliant vendor neutral solution, for almost no benefit, I just proved that you can port it in 3 seconds, if we migrate to GCP I just change the first line and you are done.

Furthermore as soon as you want to make this solution 100% compliant with whatever metric (in this case vendor neutrality), you introduce more dependencies with more stuff to make vendor neutral. In a sense you are now locked in to Docker, shouldn't we make an abstraction layer so that we can run this thing with Docker or Podman indistinguishably?

Get your focus back on the actual product you are building instead of how nice 3 lines look.

thomasfedb

The article is about DockerHub, not Docker.

Containers aren’t the only solution to every problem but they’re a decent hammer for a lot of nails.

TZubiri

One of the core arguments is that DockerHub is the default for Docker. The article shows that the URL for dockerhub is baked into Docker and is used when no registry is specified.

arccy

and who hosts that Debian image you're starting from....

the-grump

Yeah, no.

I'm not only using containers to deploy my VPSes.

Thank you for trying.

P.S. at least use something declarative and provider-agnostic like terraform.

TZubiri

What else are you using containers for?

bananapub

what a profoundly useless comment. "why don't you do something else, unrelated, which doesn't solve any of the problems you have?" is absolutely the Ur-HN Reply.

jaapz

Yeah it sounds like something someone would say who hasn't actually used docker (or containerization at all) much but has decided it sucks anyway.

baq

This also applies to any package manager repository you might be using.

JFrog charges loads of money for Artifactory, btw

marginalia_nu

Reposilite is a nice and easily deployed alternative.

XorNot

There are plenty of open source registry implementations though, including just running "distribution" from Docker.

The format is not hard to implement either for basic storage.

baq

The point is Artifactory has basically all popular (and some not very popular) repository format support built-in while supporting serious traffic, sharding, replication, etc. so you don't have to hunt for and then maintain anything. They've got a good tool, it's just expensive.

aaomidi

They do.

openplatypus

That's why for Wide Angle Analytics we use OVH hosted registry. Ours is private. You can make your public.

We control our image registry. So should you.

neoromantique

This really pushes me to get over the laziness and embrace nix.

null

[deleted]

TZubiri

[flagged]

sealeck

I don't think this is very helpful when it comes to the issue in question.

TZubiri

Well the issue in question is complaining about something that they are not paying, so my solution is not to use the thing they are not paying for instead of complaining about it to the wind.

Pretty basic stuff.

Just in general why would you want to depend on something that you are not paying for? Isn't that a huge vulnerability vector? There's some very few exceptions where we do this like with the linux kernel, maybe you do it with the OS, but adding a third layer is just getting into npm levels of carelessness. It's one thing to slap on free (as in beer) dependencies for convenience sake at the application level, but dammit have some respect for the OS layer.

hobofan

> It's a naturally vendor neutral tech so migrating should be trivial.

So are the OCI standards that grew out of Docker and now are mostly used separate from (official) Docker.

Is there even a vendor neutral VM image format?

oftenwrong

OCI image _is_ a vendor neutral VM image format; the runtime spec includes facilities for running VMs: https://github.com/opencontainers/runtime-spec/blob/main/con...

TZubiri

>Is there even a vendor neutral VM image format?

The vendor neutral standard is the Operating System. You don't need the format of the OS at disk to be standardized, that assumes a wild misconception of OS.

The OS integrates with hardware so you typically can't just copy an image between different machines and expect it to work, what's standard is the installation procedure which can be part OS provided and part hardware manufacturer/host provided.

Yes the process for installing the operating and configuring system is a bit of glue that might not be vendor neutral, but if you are obsessing over that and spending time with stuff like terraform you are missing the forest for the trees. It's like open source zealots complaining that github is closed source. You are 99% of the way there, forget about the 1% last mile and just port it manually.

regularfry

Yeah, raw disk images. If you give me a block device, I can boot off it.

Slightly less trivially, anything qemu-img handles should probably be considered at least in the neutral direction, if not actually neutral.

TZubiri

The standard would be BIOS/UEFI, and Partition schemas like GPT/MBR in that case.

However it's not always the case that you can just raw copy with dd some OS and expect it to function. OS integrate with hardware and installation can produce a unique binary OS specialized for that hardware. If you can magically dd an OS or swap an OS disk from machine to machine, then it's because of OS and kernel dev magic and can cause problems down the line.

In reality the best solution in my experience is to deploy an installation process, which usually is provided by the Host provider directly, and then run my own installation steps on userspace.

The fact that this process might be slower or involve human steps is more often a feature than a bug, and it's not something that can be solved by containers (someone has to fire up the host VMs when there's too many containers too). You can always use providers that automate new vm and even hardware deployments like AWS if you really need intra-day deployments.

dangus

Docker lists a phone number on their website, perhaps you can try that?

Instead of all the snide remarks I’ll offer another possible solution:

Contact sales for Docker Business, first state your interest in the business enterprise plan, maybe even make some statements about how it would benefit you, but also during the sales/discovery/demo process note the problems you’re having as a free organization and how they have to be resolved before you can move forward.

Once the sales team prods the right people to fix your problem, continue wasting their time a little more as punishment and then tell them sorry, we went with another vendor.

schmookeeg

Heh, I seem to have stumbled into /r/UnethicalLifeProTips

...not disagreeing with the approach. :) I swear something like half of my problems in life can be boiled down to poor/absent communication. If you're going to LARP as a grown-up company, as Docker seems to be, then you need to do the work and respond to the emails. Even from the freebie customers.

dangus

I will say though, I get it, non-paying customers aren’t customers.

But if that’s the case that they offer a free tier/open source project tier without support they shouldn’t offer a service that isn’t 100% self-service.