docker-osx icon indicating copy to clipboard operation
docker-osx copied to clipboard

Refuse to run as superuser

Open aanand opened this issue 11 years ago • 4 comments

I had a fun time trying to set a friend up with docker-osx yesterday: their /usr/local/bin directory was owned by root, so we ran sudo curl ... and sudo docker-osx shell. This resulted in docker-osx hanging during VM provisioning. Not 100% sure why, but docker-osx ssh complained about key file ownership, which may well be to do with it.

To make matters worse, attempting to stop and remove the VM failed silently, so even after a chown ... /usr/local/bin, and a do-over, things continued to behave oddly. We had to open up VirtualBox and remove it with the GUI.

Three takeaways from this:

  1. docker-osx should probably never be run as superuser.
  2. There should perhaps be a note in the README, since docker-osx is manually installed with curl. Perhaps "step 0" should be "make sure /usr/local/bin is writable by you".
  3. To prevent VM sadness, docker-osx should detect if it's running as superuser and refuse to do anything.

aanand avatar Jan 23 '14 16:01 aanand

Note: it might seem strange to run sudo docker-osx shell, but it was the only way to get docker-osx to download the docker binary (because that also goes in /usr/local/bin).

aanand avatar Jan 23 '14 16:01 aanand

Hey @aanand any update on this since you last posted? My group is having a "fun" discussion on this exact thing. Seems like brew install docker without having to sudo anything would be the bees knees.

qdonnellan avatar Aug 01 '14 20:08 qdonnellan

No, haven't revisited it. Would be a fairly simple PR though.

Looking back, it might be smart to revise point number 2 - instead of putting it in the documentation, simply have docker-osx check /usr/local/bin for writability and exit with a helpful message if it isn't.

However, this is all moot if boot2docker solves the volumes problem, at which point docker-osx can be deprecated entirely.

aanand avatar Aug 01 '14 21:08 aanand

Your are right one of our target is to deprecate docker-osx in favor of boot2docker i think it will be more easy due to the fact @bfirsh is now a part of docker team.

julien-duponchelle avatar Aug 04 '14 09:08 julien-duponchelle