Project

General

Profile

Actions

Feature #6838

closed

Configurable docker binary location

Added by Tom Clegg over 8 years ago. Updated over 8 years ago.

Status:
Resolved
Priority:
Normal
Assigned To:
Category:
Crunch
Target version:
Story points:
0.5

Description

From https://github.com/curoverse/arvados/pull/20

This is useful because it allows one to start the crunch dispatcher using a docker other than /usr/bin/docker.io, which is a relatively common situation (e.g. on many distros docker is packaged as /usr/bin/docker).

Actions #1

Updated by Brett Smith over 8 years ago

I'm looking at this.

Actions #2

Updated by Brett Smith over 8 years ago

The code change looks good to me, and +1 for updating the documentation.

Part of me wonders if we would've gotten this submission if we had better defaults. Now that docker.io has moved to docker.com, it seems like docker is the canonical name of the tool, and docker.io is archaic. That's the name the Docker user guide uses throughout, at least. I think docker.io is in our own backported package because of inertia, and even it's been providing a docker symlink for a while.

Because of all this, I think the suggested value in the documentation should be docker. I wonder if we should also change crunch-job's default value to docker as well, but I'm OK with addressing that separately if you think it's a non-trivial change.

Thanks.

Actions #3

Updated by Brett Smith over 8 years ago

Actually, I had a belated thought: in the spirit of DRY, would it be better if crunch-dispatch only added --docker-bin to the command-line when CRUNCH_JOB_DOCKER_BIN is actually set? That would mean the "default" path only lives in one place, crunch-job.

Actions #4

Updated by Tom Clegg over 8 years ago

Brett Smith wrote:

Actually, I had a belated thought: in the spirit of DRY, would it be better if crunch-dispatch only added --docker-bin to the command-line when CRUNCH_JOB_DOCKER_BIN is actually set? That would mean the "default" path only lives in one place, crunch-job.

Agreed. I'll update this.

Changing the default to docker sounds good too. Sounds like it's unlikely anyone has docker.io but not docker.

For future work in the "should be able to make just about anything work as a compute node" department, I wonder if "specify a PATH for crunch-job to use" would be a good way to cover more ground.

Actions #5

Updated by Brett Smith over 8 years ago

Okay, so, I swear I'm not tormenting you with this, I'm just working with the best information I have at the time. But while I was working on my own Docker branches over the weekend, I found Docker's Debian installation instructions, which say:

Note: Debian contains a much older KDE3/GNOME2 package called docker, so the package and the executable are called docker.io.

So… now I don't know what to think. I guess my thoughts from here are:

  • Functionality-wise, all the code seems great, thanks.
  • Switching the default from docker.io to docker still seems reasonable to me, although reasonable minds may differ. May be interesting to get Ward's take, since he built our packages and added the symlink later.
  • If you want to make the switch wholesale, there are a still a lot of references to docker.io throughout our docs, especially /doc/install-docker.html.textile.liquid and /docker/README.md.

Thanks.

Actions #6

Updated by Tom Clegg over 8 years ago

OK, stripped off the docker.io->docker commits, now back at e8ba9a04. We can merge the "can override" patch now, and discuss docker vs. docker.io as the default over many lunches to come. Sound OK?

Actions #7

Updated by Joshua Randall over 8 years ago

FWIW, I believe docker.io is the default binary name on all debian-derived distros (as far as I know, the official docker packages have always called the binary docker). The reason for the different name on debian is that they have already packaged something else called 'docker' (I think it is a GUI menu application implementing some kind of dock).

Actions #8

Updated by Brett Smith over 8 years ago

  • Target version changed from Bug Triage to 2015-08-05 sprint
  • Story points set to 0.5

Tom Clegg wrote:

OK, stripped off the docker.io->docker commits, now back at e8ba9a04. We can merge the "can override" patch now, and discuss docker vs. docker.io as the default over many lunches to come. Sound OK?

This is good to merge, thanks.

Actions #9

Updated by Tom Clegg over 8 years ago

  • Status changed from New to Resolved
  • % Done changed from 0 to 100

Applied in changeset arvados|commit:b958c247cba0cc0a9b13dfd4fbc10c1a807b5074.

Actions

Also available in: Atom PDF