diff --git a/site/experimental-features.md b/site/experimental-features.md new file mode 100644 index 00000000..bc3c2a24 --- /dev/null +++ b/site/experimental-features.md @@ -0,0 +1,53 @@ +--- +title: Experimental features +layout: default +--- + +# Experimental features + + * [Proxy](#proxy) + +### Proxy + +Instead of the weave command-line utility, you may prefer to use the standard +docker command-line utility to manage containers. This will allow containers to +be started in foreground mode. It will also ensure that the weave network +interface is available before running your container. + +#### Setup + +To do this, while still connecting containers to the weave network, you can use +the weave proxy. We can start the proxy with + + host1$ weave launch-proxy + +By default, the proxy will connect to docker at `unix:///var/run/docker.sock`, +and listen on port 12375. However, we can adjust the connection to docker via +the `-H` argument. All docker commands can be run via the proxy, so it is safe +to globally adjust your `DOCKER_HOST`. + + host1$ export DOCKER_HOST="tcp://host1:12375" + host1$ docker ps + +#### Usage + +When containers are created via the weave proxy, their entrypoint will be +modified to wait for the weave network interface to become available. When they are +started via the weave proxy, any IP addresses and networks specified in the +`WEAVE_CIDR` environment variable will be attached. We can create and start a +container via the weave proxy with + + host1$ docker run -e WEAVE_CIDR=10.2.1.1/24 -ti ubuntu /bin/sh + +or, equivalently with + + host1$ docker create -e WEAVE_CIDR=10.2.1.1/24 -ti ubuntu /bin/sh + 5ef831df61d50a1a49272357155a976595e7268e590f0a2c75693337b14e1382 + host1$ docker start 5ef831df61d50a1a49272357155a976595e7268e590f0a2c75693337b14e1382 + +Multiple IP addresses and networks can be supplied in the WEAVE_CIDR variable by space-separating them, as in `WEAVE_CIDR=10.2.1.1/24 10.2.2.1/24`. + +#### Limitations + +* The proxy does not currently support TLS. +* If you have a firewall, you will need to make sure port 12375 is open. diff --git a/site/index.md b/site/index.md index 57264417..6b6be5a9 100644 --- a/site/index.md +++ b/site/index.md @@ -8,6 +8,7 @@ layout: default * [Introduction, Installation and Example](https://github.com/weaveworks/weave#readme) * [Getting Started Guides](http://weave.works/guides/) * [Features](features.html) + * [Experimental features](experimental-features.html) * [Automatic IP Address Management](ipam.html) * [Automatic Discovery with WeaveDNS](weavedns.html) * [Troubleshooting](troubleshooting.html)