News for hackers. Stuff that matters.
Re:Goodbye Docker and Thanks for all the Fish by baybal2 on Sunday March 10, 2019 @08:42AM (#19351701)
> What’s wrong with Docker?

What's wrong with not using Docker? Outside of cloud/SOA/webscale sector, people having hard time to simply comprehend the drama.

I have not seen any justification for using containers on any scaleable system on real hardware for example.

In "ad-farm" world, running ad farms on pure hardware with netboot provisioning has been the "gold standard" since time immemorial.

Few points:

1. Netboot with root at tmpfs takes less time to boot, seconds over 10G (most of the time is spent on POST and DHCP actually.)

2. Netboot images can be stripped to the barest minimum of life-sustainance. Less software running — less problems.

3. Less attack surface for hackers.

4. Hard lockup proof - hardware watchdogs are more or less foolproof.

5. Linkup to the real network is as simple as it gets, you can use broadcasts for self-configuration and service discovery on the network.

6. If you deal with RDMA, well, you will be already spending most of your efforts on just getting software work as advertised on the bare system, and the additional troubles of containerisation will not worth dealing with.

Re:Goodbye Docker and Thanks for all the Fish by ex_amazon_sde on Sunday March 10, 2019 @01:10PM (#19352925)
Former Amazon engineer here. Despite the downvotes, you are making an excellent point.

Amazon, among other FAANG companies, never needed containers shipping entire bundled OSes.

Deploying a "base OS" (using PXE or netboot) can be done very reliably both on a hypervisors and VMs.

A simple build system can then generate traditional packages and push them into VMs allocated for a specific product.

It provides better security isolation and the ability to receive security updates on OSes and also on dynamically linked libraries.

Building and deploying new versions of you product is also much faster, especially at large scale: only your application package is rebuilt and deployed.

Re:Goodbye Docker and Thanks for all the Fish by manigandham on Sunday March 10, 2019 @01:14PM (#19352956)
That's technically what companies with refined processes do by using "scratch" docker images that only contain the binaries needed for the application and nothing else.

The fact that many other containers run entire OS is because it's easier to get started, or there are runtimes needed, or people just build and deploy in the same image.

Re:Goodbye Docker and Thanks for all the Fish by fatherlinnux on Sunday March 10, 2019 @02:35PM (#19353469)
I agree that developed companies are doing what is described, but that is a completely separate thing than starting from scratch.

People have hurriedly forgotten why Linux distros exist: https://opensource.com/article/19/2/linux-distributions-stil...

Even when you write a lot of software, environments always drag in existing tools and infrastructure (aka other open source). 99% it's easier to consume pre-built SME knowledge from. Linux distro #HailTheMaintainers

Re:Goodbye Docker and Thanks for all the Fish by 1337shadow on Sunday March 10, 2019 @08:56AM (#19351743)
Containerization is a cost effective alternative to building and running immutable VM images, which is a best practice in terms of CD. Another way to put it is: don't build in production, instead build in CI, test your image and then just deploy it on your environments (you probably should have at least two: staging and production).
Re:Goodbye Docker and Thanks for all the Fish by tasubotadas on Sunday March 10, 2019 @10:31AM (#19352126)
You kinda missed the point that docker is more about packaging the applications than running them. Running apps is easy. Packaging in such a way that they could be run without hassle - hard.
Re:Goodbye Docker and Thanks for all the Fish by baybal2 on Sunday March 10, 2019 @10:34AM (#19352140)
> could be run without hassle - hard.

Strict versioning of every dependency - exactly the thing a packaging system solves.

Specific system configuration? Also not a problem at all with netboot images.

Re:Goodbye Docker and Thanks for all the Fish by Aeolun on Sunday March 10, 2019 @10:42AM (#19352172)
Can I run netboot images anywhere easily from my command line?
Re:Goodbye Docker and Thanks for all the Fish by baybal2 on Sunday March 10, 2019 @11:14AM (#19352276)
Few companies that used them that I dealt with had their own tooling, but that was nothing special.

CI picks up your image build, then commits its record to a DB from which DHCP server looks up a boot image for given MAC, then it either SSHed a reboot command or used an IPMI reboot. Voila

Today, some server motherboard firmwares can boot images off HTTP, vlan, and can talk with the boot server itself on HTTP

Re:Goodbye Docker and Thanks for all the Fish by tasubotadas on Monday March 11, 2019 @07:43AM (#19358180)
Much more straightforward than docker!
Re:Goodbye Docker and Thanks for all the Fish by fatherlinnux on Sunday March 10, 2019 @02:38PM (#19353487)
You could have if HashiCorp had beaten Docker to market with a simple VagrantHub and bud tool...

It could have easily been VMs instead of containers. IMHO, it was all the packaging...

Re:Goodbye Docker and Thanks for all the Fish by syn0byte on Monday March 11, 2019 @10:13AM (#19359079)
~$ qemu diskimage.img
Re:Goodbye Docker and Thanks for all the Fish by zenexer on Sunday March 10, 2019 @09:03AM (#19351781)
That sounds like a pretty solid system, but it’s not at all what the author is advocating. The author states that Docker is destined to be replaced by other containerization frameworks. The functionality differences won’t be as stark as what you’ve described, so this isn’t really a good comparison.

That being said, I’d agree that netboot + tmpfs has a lot of advantages; unfortunately, it’s not always practical, especially at smaller scales. Containers are convenient and don’t require any special hardware accommodations.

Re:Goodbye Docker and Thanks for all the Fish by pilooch on Sunday March 10, 2019 @08:58AM (#19351755)
One reason I see as an open source developer is low touch adoption and environment control. Over with build support on many Linux flavors (redhat from the past, archlinux from the ghetto :) ), use dockerized version instead. This might be my narrow corner of the world but users have driven me to dockerize much of what I do code, and my support hassle has lowered, a lot.
Re:Goodbye Docker and Thanks for all the Fish by StreamBright on Sunday March 10, 2019 @10:05AM (#19352030)
Exactly, we have POCed Docker and realised we have a solution for every aspect that it is trying to address. I found one and exactly one use case for Docker, running CI/CD workload.