Skip to content
This repository was archived by the owner on Oct 31, 2023. It is now read-only.

Update to 1.3.1 #75

Open
mlevin2 opened this issue Dec 1, 2014 · 7 comments
Open

Update to 1.3.1 #75

mlevin2 opened this issue Dec 1, 2014 · 7 comments

Comments

@mlevin2
Copy link

mlevin2 commented Dec 1, 2014

Hi,

Thanks for providing this. Works great. Wondering if you will be upgrading to support 1.3.1 any time soon.

@jure
Copy link

jure commented Feb 4, 2015

👍, docker is already at 1.4.0.

@jwhitcraft
Copy link

1.5.0 is out now

@WillChilds-Klein
Copy link

Hi,

just checking in to see if either I'm clueless or this problem indeed persists. I'm running vagrant 1.7.2 courtesy of Homebrew.

Vagrant is using the default mitchellh/boot2docker box with version 1.2.0 which has docker version 1.2.0 and API version 1.14 for both client and server. the issue is that Homebrew has installed docker client version 1.18 and API version 1.6.0.

pointing my $DOCKER_HOST at the default vm that vagrant automatically sets up and executing a docker command (e.g. docker ps -a) locally (on my mac) then yields the error

FATA[0000] Error response from daemon: client and server don't have same version (client : 1.18, server: 1.14)

I've tried deleting the box file ~/.vagrant.d/boxes/mitchellh-VAGRANTSLASH-boot2docker, which forces an update, but keep getting the same version (1.2.0).

I really like vagrant and it's tao/zen/etc, but this is a major issue for me, as it renders my local docker cli useless. Is the issue really that the box's version is out of date (which could be fixed by a simple update/push by @mitchellh ?), or am I missing something?

@ches
Copy link

ches commented May 2, 2015

Because this box is always woefully behind, I would recommend that you all just use yungsang/boot2docker, or else get used to building your own up-to-date version of this box by following the Packer instructions in the README.

Vagrant has a built-in Vagrantfile to use mitchellh/boot2docker by default when you use the Docker provider. The docs tell us how to override this (see the "Host VM" section of the page). In short, you just need to add the following to the Vagrantfile in your project:

# Override Vagrant's default Docker host VM that uses mitchellh/boot2docker box
config.vm.provider "docker" do |d|
  d.vagrant_vagrantfile = "./dockerhost/Vagrantfile"
end

Then, create ./dockerhost/Vagrantfile (or wherever you wish to put it) by copying the contents of Vagrant's default version, and updating it to your liking:

  • Change the box to point to the one you built (or YungSang's if you trust it).
  • Bumping the RAM higher than default is a good idea.
  • I like to set vb.name for VirtualBox to "boot2docker-vagrant" so it's more useful than the annoying "default" in vagrant global-status and the GUI, etc.
  • YungSang enables NFS on his boot2docker image—if using his box, enable it in the host Vagrantfile if you wish.

If there's an appropriate place to document these steps in more detail than they're already covered by the provider doc linked above, I'll be happy to whip up a doc PR. Mitchell's a busy guy. I wish he'd find a way to enable some others to keep this box up-to-date since it's a default in Vagrant core (and give some love to vagrant-aws, but don't get me started…).

@WillChilds-Klein
Copy link

awesome, thanks @ches for the tips! I agree, having those instructions in Vagrant's docs would be super helpful. Since leaving that comment, I've switched to Docker Machine for all of my docker-related VM/host management needs. Machine has been a wonderful tool for me so far, and I'd suggest it to anyone encountering these issues.

That said, I really do appreciate Vagrant. I use it for all of my non-docker VM management needs, and will be keeping tabs on this so I can switch back once doing so is more practical.

@rjbrown99
Copy link

I will also draw attention to Dinghy: https://github.com/codekitchen/dinghy

Built as a derivative of this project with boot2docker. As of this writing it's @ 1.7.0 and is a very easy deploy to get it up and running. Wish I had found that yesterday - would have saved me hours.

@improved-broccoli
Copy link

Or you can just:

  1. Clone this repo
  2. From the master branch, edit the template.json file to leave only the vbox image building
  3. Then build it with packer
  4. Create a Vagrantfile using the image you just build: it will be your docker host
  5. In your app Vagrantfile, set d.vagrant_vagrantfile to the path of your docker host Vagrantfile

It's not that complicated.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants