Skip to content

docker unix socket not available in boot2docker, use tcp instead #94

Description

@brainstorm

Hello @crosbymichael,

In the documentation you mention the following commandline:

docker pull crosbymichael/skydock
docker run -d -v /var/run/docker.sock:/docker.sock --name skydock crosbymichael/skydock -ttl 30 -environment dev -s /docker.sock -domain docker -name skydns

And then, there's an assumption on using unix sockets instead of tcp ones:

"""
(...) I'm guessing for most, you do not want to service the docker API on a tcp port for containers to reach. If we bind the unix socket into this container we don't have to worry about other containers accessing the API, only skydock.
"""

The default for OSX machines running things like boot2docker is to run the local docker client pointing to a Virtualbox VM that runs docker inside (since OSX's kernel does not support Docker natively... (yet or ever?)):

$ docker-machine ls
NAME   ACTIVE   DRIVER       STATE     URL                         SWARM
dev    *        virtualbox   Running   tcp://192.168.99.102:2376

I've been trying to run the container without specifying unix sockets, but apparently it is a requirement when running the service?:

$ docker run -a STDERR --name skydock crosbymichael/skydock -ttl 30 -environment dev -domain arvados -name skydock
[info] 1445275257 skydock: loading plugins from /plugins/default.js
[fatal] 1445275257 skydock: error retrieving skydns container 'skydock': dial unix /var/run/docker.sock: no such file or directory
dial unix /var/run/docker.sock: no such file or directory

How can I run skydock when docker-machine and the OSX setup in general relies on TCP ports instead of sockets?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions