An on demand Docker virtual machine, thanks to Vagrant and boot2docker. Works great on Macs and other platforms that don't natively support the Docker daemon. Support VirtualBox, VMware, and Parallels.
Using dvm in an environment where the default network range for Docker (172.16.42.1/24) conflicts with the local network, containers are unable to reach any hosts on the local network.
Docker allows passing in the --bip="" option to set the CIDR range for the docker0 bridge it creates. However, this alone is not enough. Since Docker will have already been started once, the docker0 bridge will already exist with the conflicting network range, causing the --bip option to take no effect.
Solution
To allow setting the CIDR range for the docker0 bridge, I've added the configuration directive DOCKER0_CIDR to dvm.conf.
To fix the issue of docker0 previously existing, the bridge-utils package is installed to provide brctl (I did check busybox first to make sure it was not already included), which is then used to remove the docker0 bridge before starting Docker with the new arguments.
NOTE: This pull request depends on #21
Problem
Using dvm in an environment where the default network range for Docker (
172.16.42.1/24
) conflicts with the local network, containers are unable to reach any hosts on the local network.Docker allows passing in the
--bip=""
option to set the CIDR range for thedocker0
bridge it creates. However, this alone is not enough. Since Docker will have already been started once, thedocker0
bridge will already exist with the conflicting network range, causing the--bip
option to take no effect.Solution
docker0
bridge, I've added the configuration directiveDOCKER0_CIDR
todvm.conf
.docker0
previously existing, thebridge-utils
package is installed to providebrctl
(I did check busybox first to make sure it was not already included), which is then used to remove thedocker0
bridge before starting Docker with the new arguments.