This is a temporary workaround to have etcd listening on all interfaces so you can access it from docker containers.
Create a file called /media/state/units/etcd-local.service
that has the following contents:
[Unit]
Description=etcd local
[Service]
User=etcd
PermissionsStartOnly=true
ExecStartPre=/bin/systemctl kill etcd.service
ExecStartPre=/usr/bin/etcd-pre-exec
ExecStart=/usr/bin/etcd -d /var/lib/etcd -f -cl 0.0.0.0
Restart=always
# Set a longish timeout in case this machine isn't behaving
# nicely and bothering the rest of the cluster
RestartSec=10s
[Install]
WantedBy=local.target
sudo systemctl restart local-enable.service
Setup an ubuntu container with curl
$ docker run -t -i ubuntu /bin/bash
$ apt-get install curl
Now you need to find the ip of the bridge
$ ip route
default via 172.17.42.1 dev eth0
172.17.0.0/16 dev eth0 proto kernel scope link src 172.17.0.2
Now just curl from the default route IP:
$ curl http://172.17.42.1:4001/v1/keys/
Have fun!