Преглед изворни кода

Add swarm

Signed-off-by: Andrea Luzzardi <[email protected]>
Andrea Luzzardi пре 10 година
родитељ
комит
471fa6e4cb
4 измењених фајлова са 72 додато и 0 уклоњено
  1. 1 0
      swarm/README-short.txt
  2. 69 0
      swarm/content.md
  3. 2 0
      swarm/license.md
  4. BIN
      swarm/logo.png

+ 1 - 0
swarm/README-short.txt

@@ -0,0 +1 @@
+Swarm: a Docker-native clustering system.

+ 69 - 0
swarm/content.md

@@ -0,0 +1,69 @@
+# Swarm: a Docker-native clustering system
+
+%%LOGO%%
+
+`swarm` is a simple tool which controls a cluster of Docker hosts and exposes it
+as a single "virtual" host.
+
+`swarm` uses the standard Docker API as its frontend, which means any tool which
+speaks Docker can control swarm transparently: dokku, fig, krane, flynn, deis,
+docker-ui, shipyard, drone.io, Jenkins... and of course the Docker client itself.
+
+Like the other Docker projects, `swarm` follows the "batteries included but removable"
+principle. It ships with a simple scheduling backend out of the box, and as initial
+development settles, an API will develop to enable pluggable backends. The goal is
+to provide a smooth out-of-box experience for simple use cases, and allow swapping
+in more powerful backends, like `Mesos`, for large scale production deployments.
+
+# Example usage
+
+```bash
+# create a cluster
+$ docker run --rm swarm create
+6856663cdefdec325839a4b7e1de38e8 # <- this is your unique <cluster_id>
+
+# on each of your nodes, start the swarm agent
+#  <node_ip> doesn't have to be public (eg. 192.168.0.X),
+#  as long as the swarm manager can access it.
+$ docker run -d swarm join --addr=<node_ip:2375> token://<cluster_id>
+
+# start the manager on any machine or your laptop
+$ docker run -t -p <swarm_port>:2375 -t swarm manage token://<cluster_id>
+
+# use the regular docker cli
+$ docker -H tcp://<swarm_ip:swarm_port> info
+$ docker -H tcp://<swarm_ip:swarm_port> run ...
+$ docker -H tcp://<swarm_ip:swarm_port> ps
+$ docker -H tcp://<swarm_ip:swarm_port> logs ...
+...
+
+# list nodes in your cluster
+$ docker run --rm swarm list token://<cluster_id>
+<node_ip:2375>
+```
+
+See [here](https://github.com/docker/swarm/blob/master/discovery/README.md) for
+more information about other discovery services.
+
+## Advanced Scheduling
+
+See [filters]
+(https://github.com/docker/swarm/blob/master/scheduler/filter/README.md) and
+[strategies]
+(https://github.com/docker/swarm/blob/master/scheduler/strategy/README.md)
+to learn more about advanced scheduling.
+
+## TLS
+
+Swarm supports TLS authentication between the CLI and Swarm but also between
+Swarm and the Docker nodes.
+
+In order to enable TLS, the same command line options as Docker can be specified:
+
+`swarm manage --tlsverify --tlscacert=<CACERT> --tlscert=<CERT> --tlskey=<KEY> [...]`
+
+Please refer to the [Docker documentation](https://docs.docker.com/articles/https/)
+for more information on how to set up TLS authentication on Docker and generating
+the certificates.
+
+Note that Swarm certificates must be generated with`extendedKeyUsage = clientAuth,serverAuth`.

+ 2 - 0
swarm/license.md

@@ -0,0 +1,2 @@
+View [license information](https://github.com/docker/swarm/blob/master/LICENSE)
+for the software contained in this image.