commit
3b6118c6ec
|
|
@ -0,0 +1 @@
|
|||
Swarm: a Docker-native clustering system.
|
||||
|
|
@ -0,0 +1,112 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`0.1.0-rc3`, `latest` (*Dockerfile*)](https://github.com/docker/swarm-library-image/blob/c0f8204b2a1bb34233cd2144df51a4de9572440c/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant
|
||||
manifest file
|
||||
(`library/swarm`)](https://github.com/docker-library/official-images/blob/master/library/swarm)
|
||||
in the [`docker-library/official-images` GitHub
|
||||
repo](https://github.com/docker-library/official-images).
|
||||
|
||||
# Swarm: a Docker-native clustering system
|
||||
|
||||

|
||||
|
||||
`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`.
|
||||
|
||||
# License
|
||||
|
||||
View [license information](https://github.com/docker/swarm/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
|
||||
# Supported Docker versions
|
||||
|
||||
This image is officially supported on Docker version 1.5.0.
|
||||
|
||||
Support for older versions (down to 1.0) is provided on a best-effort basis.
|
||||
|
||||
# User Feedback
|
||||
|
||||
## Issues
|
||||
|
||||
If you have any problems with or questions about this image, please contact us
|
||||
through a [GitHub issue](https://github.com/docker/swarm-library-image/issues).
|
||||
|
||||
You can also reach many of the official image maintainers via the
|
||||
`#docker-library` IRC channel on [Freenode](https://freenode.net).
|
||||
|
||||
## Contributing
|
||||
|
||||
You are invited to contribute new features, fixes, or updates, large or small;
|
||||
we are always thrilled to receive pull requests, and do our best to process them
|
||||
as fast as we can.
|
||||
|
||||
Before you start to code, we recommend discussing your plans
|
||||
through a [GitHub issue](https://github.com/docker/swarm-library-image/issues), especially for more ambitious
|
||||
contributions. This gives other contributors a chance to point you in the right
|
||||
direction, give you feedback on your design, and help you find out if someone
|
||||
else is working on the same thing.
|
||||
|
|
@ -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`.
|
||||
|
|
@ -0,0 +1,2 @@
|
|||
View [license information](https://github.com/docker/swarm/blob/master/LICENSE)
|
||||
for the software contained in this image.
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 121 KiB |
|
|
@ -50,6 +50,7 @@ declare -A otherRepos=(
|
|||
[r-base]='https://github.com/rocker-org/rocker'
|
||||
[registry]='https://github.com/docker/docker-registry'
|
||||
[rethinkdb]='https://github.com/stuartpb/rethinkdb-dockerfiles'
|
||||
[swarm]='https://github.com/docker/swarm-library-image'
|
||||
[thrift]='https://github.com/ahawkins/docker-thrift'
|
||||
[ubuntu-debootstrap]='https://github.com/tianon/docker-brew-ubuntu-debootstrap'
|
||||
[ubuntu-upstart]='https://github.com/tianon/dockerfiles'
|
||||
|
|
|
|||
Loading…
Reference in New Issue