Live data from Hacker News

Docker without Docker

chimeracoder.github.io

81–90 of 101 posts

Re: Docker without Docker

#81
post #46

Earlier quoted context omitted.

1. Upstart is not a fork of systemd, and was started a fair amount of time before systemd. 2. Ubuntu 15.04 just shipped with systemd as the default init system (although installing "upstart-sysv" the system should revert to using upstart).

Note that in the Grub boot menu you can also choose whether Ubuntu 15.04 boots with upstart or systemd. Both are functional. Thankfully that saved me when systemd couldn't grasp the concept of a btrfs volume being spread over two disks (raid 0).

really? i have that exact setup except with three striped disks, it works fine

Re: Docker without Docker

#82
post #32

Earlier quoted context omitted.

It's works fine here using the right arrow on Firefox Nightly 40.0a1 running on Ubuntu 15.04.

Ha, it didn't occur to me to use the keyboard.

What I find incredible is that the same exchange takes place on HN every single time a web slideshow is posted...

Isn't trying the arrow keys / keyboard navigation an instictive thing to do?

Re: Docker without Docker

#83

This is almost exactly how we run the Ironic provisioning agent that supports Rackspace OnMetal. We export use Docker to build and export an image, then use CoreOS + systemd-nspawn to run it across every unprovisioned machine.

Funny, we're running the rackspace-monitoring-agent on CoreOS like that. however we do docker pull/extract before running systemd-nspawn, if i got it right the systemd-tooling can handle docker images as they are, which would be nice.

Re: Docker without Docker

#84
post #50

Earlier quoted context omitted.

chroot's aren't namespaced, which is a big important difference. Being able to kill the entire container by killing it's init process (and keep it's processes out of the host namespace) is a huge deal.

chroot's aren't namespaced Sure they are. If you chroot apache to /var/www, then /var/www is now / in the chroot'ed namespace.

Yeah, and if "everything is a file" was actually true, then the filesystem would be the only namespace you needed to care about.

It isn't.

Re: Docker without Docker

#85
post #49
post #17

that's a good intro to systemd-nspawn and machinectl - which happen to be much nicer to use than docker (yet transparently work with docker images if you want that). its also easier to install since you generally "already have it" and there's no setup. There's a few things it doesn't do (neither docker, or lxc for that matter) - yet at least - such as mounting fses before container start or manage upgrades.

I'm not sure how you'd manage upgrades - that's an OS function, but for nspawn you'd just write your unit file to Require some *.mount files before boot.

updates generally require a daemon restart (and in this case perhaps a container restart), if you couple it with requisite mounts, the whole machinery has to care for mounts, upgrades and restarts altogether

I suspect it could be hacked somehow with service files, too

This is particularly significant if you use something like btrfs snapshots with a base mount and child mounts, or overlayfs and invalidate inodes during upgrades, instead of a dumb-ish "yum upgrade/apt-get upgrade/etc"

The main difference is that in this case the update is at the mount / container level when propagated from the base image.

Some (most) others also do that with image versions and a full image swap.

Re: Docker without Docker

#86

Author here - I'm working on a blog post for this and didn't expect this to be posted on HN so soon, but I guess that's what I should expect for posting a link to it in another HN comment! :) These slides correspond to a workshop I conducted a week ago demonstrating the internals of Docker and how Docker containers can be run without using any of the Docker tools or runtime. Docker is a great tool, and I'm glad it's…

Sorry for slightly offtopic but what do you use to generate slideshows like this from the .slide file? I'm kinda fed up with creating powerpoints every week for meetings, would be great if there's a way to generate these locally. Is it possible to create templates? Would probably be more or less required to keeping the organization profiling.

Re: Docker without Docker

#87
post #69

Earlier quoted context omitted.

How do you get boot2LXC working? Any docs, or does everyone have to DIY it all again? Is there an ecosystem around LXC that provides things like Flynn? I can do it all myself, but I can't do it, my development job, and be home for dinner at night. Like most tools today, the value is in the ecosystem, not the tool itself.

LXC is generic container technology like KVM OR Xen are generic virtualization technologies. LXC virtualizes the OS environment and gives you lightweight containers that you can seamlessly transition your VM workloads to, or use as a lightweight portable alternative to VMs, so its use case is general and not a narrow focus on paas or deployment centric technology. Users can then decide how they want to deploy. Docker…

Not sure saying LXC is "generic" is helpful either. It is opinionated that you should be virtualizing the whole OS environment, like Docker is (fairly) opinionated that you should not be.

I think some of the confusion arose as people used to use LXC as a generic term for the container technologies as well as the product, before there were any other products. namespaces+cgroups is not such a nice name. And using "linuxcontainers.org" as the website does not make it clearer.

Re: Docker without Docker

#88
I'm very sad that Hacker School had to change its name (for entirely valid reasons, although it's sad they're there). "Recurse Center" makes it sound like some . . . creationist think-tank.

Re: Docker without Docker

#89
post #80

Somewhat unrelated. Is there a way to ship a container image with just a "diff" of the default image. Say I build a container with ubuntu 14.04 + some packages installed with apt. I would like to be able to "export" the filesystem, but only the files that are not present in the base os image. The reason I would like this is that I would like to use docker (or systemd-nspawn) to run containers on an device that will n…

As long as you are pulling images from a docker registry, this should automatically happen.

Last I checked. Docker will pull a delta when resolving new containers, but will export the entire thing if you want something for offline usage.

I had the same question as OP and didn't find anything that works as he described it when I looked 6+ months ago.

Re: Docker without Docker

#90
post #69

Earlier quoted context omitted.

How do you get boot2LXC working? Any docs, or does everyone have to DIY it all again? Is there an ecosystem around LXC that provides things like Flynn? I can do it all myself, but I can't do it, my development job, and be home for dinner at night. Like most tools today, the value is in the ecosystem, not the tool itself.

LXC is generic container technology like KVM OR Xen are generic virtualization technologies. LXC virtualizes the OS environment and gives you lightweight containers that you can seamlessly transition your VM workloads to, or use as a lightweight portable alternative to VMs, so its use case is general and not a narrow focus on paas or deployment centric technology. Users can then decide how they want to deploy. Docker…

So, you're saying it's about a month or six to replicate the conveniences that docker has provided for our organizations?

Docker isn't anything special. There's nothing that is magical or revolutionary there, but what you describe is quite a bit of work to replicate the ecosystem. That's time that could be used creating novel value.

Post reply on HN