From c2ecf7f9f30f2ec18b6bbbc921123db42c3b81be Mon Sep 17 00:00:00 2001 From: Mary Anthony Date: Sun, 24 Jan 2016 08:39:14 -0800 Subject: [PATCH] Adding new navigation Moving API to top level Fixing broken links to api Signed-off-by: Mary Anthony --- docs/discovery.md | 8 ++-- docs/index.md | 74 ++++------------------------------- docs/install-manual.md | 11 +++--- docs/install-w-machine.md | 6 +-- docs/multi-manager-setup.md | 6 +-- docs/networking.md | 11 +++--- docs/overview.md | 77 +++++++++++++++++++++++++++++++++++++ docs/scheduler/filter.md | 8 ++-- docs/scheduler/index.md | 6 ++- docs/scheduler/strategy.md | 8 ++-- docs/{api => }/swarm-api.md | 5 ++- 11 files changed, 119 insertions(+), 101 deletions(-) create mode 100644 docs/overview.md rename docs/{api => }/swarm-api.md (97%) diff --git a/docs/discovery.md b/docs/discovery.md index 7670fe8d30..4b3741d084 100644 --- a/docs/discovery.md +++ b/docs/discovery.md @@ -1,15 +1,15 @@ -# Discovery +# Docker Swarm Discovery Docker Swarm comes with multiple discovery backends. You use a hosted discovery service with Docker Swarm. The service maintains a list of IPs in your swarm. This page describes the different types of hosted discovery available to you. These are: @@ -218,4 +218,4 @@ github.com/docker/docker/pkg/discovery. - [Docker Swarm overview](index.md) - [Scheduler strategies](scheduler/strategy.md) - [Scheduler filters](scheduler/filter.md) -- [Swarm API](api/swarm-api.md) +- [Swarm API](swarm-api.md) diff --git a/docs/index.md b/docs/index.md index ad9ae6159c..66b720eca8 100644 --- a/docs/index.md +++ b/docs/index.md @@ -1,76 +1,18 @@ -# Docker Swarm overview -Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts -into a single, virtual Docker host. Because Docker Swarm serves the standard -Docker API, any tool that already communicates with a Docker daemon can use -Swarm to transparently scale to multiple hosts. Supported tools include, but -are not limited to, the following: +# Docker Swarm -- Dokku -- Docker Compose -- Krane -- Jenkins - -And of course, the Docker client itself is also supported. - -Like other Docker projects, Docker Swarm follows the "swap, plug, and play" -principle. As initial development settles, an API will develop to enable -pluggable backends. This means you can swap out the scheduling backend -Docker Swarm uses out-of-the-box with a backend you prefer. Swarm's swappable design provides a smooth out-of-box experience for most use cases, and allows large-scale production deployments to swap for more powerful backends, like Mesos. - -## Understand swarm creation - -The first step to creating a swarm on your network is to pull the Docker Swarm image. Then, using Docker, you configure the swarm manager and all the nodes to run Docker Swarm. This method requires that you: - -* open a TCP port on each node for communication with the swarm manager -* install Docker on each node -* create and manage TLS certificates to secure your swarm - -As a starting point, the manual method is best suited for experienced administrators or programmers contributing to Docker Swarm. The alternative is to use `docker-machine` to install a swarm. - -Using Docker Machine, you can quickly install a Docker Swarm on cloud providers or inside your own data center. If you have VirtualBox installed on your local machine, you can quickly build and explore Docker Swarm in your local environment. This method automatically generates a certificate to secure your swarm. - -Using Docker Machine is the best method for users getting started with Swarm for the first time. To try the recommended method of getting started, see [Get Started with Docker Swarm](install-w-machine.md). - -If you are interested manually installing or interested in contributing, see [Create a swarm for development](install-manual.md). - -## Discovery services - -To dynamically configure and manage the services in your containers, you use a discovery backend with Docker Swarm. For information on which backends are available, see the [Discovery service](discovery.md) documentation. - -## Advanced Scheduling - -To learn more about advanced scheduling, see the -[strategies](scheduler/strategy.md) and [filters](scheduler/filter.md) -documents. - -## Swarm API - -The [Docker Swarm API](api/swarm-api.md) is compatible with -the [Docker remote -API](http://docs.docker.com/reference/api/docker_remote_api/), and extends it -with some new endpoints. - -# Getting help - -Docker Swarm is still in its infancy and under active development. If you need -help, would like to contribute, or simply want to talk about the project with -like-minded individuals, we have a number of open channels for communication. - -* To report bugs or file feature requests: please use the [issue tracker on Github](https://github.com/docker/swarm/issues). - -* To talk about the project with people in real time: please join the `#docker-swarm` channel on IRC. - -* To contribute code or documentation changes: please submit a [pull request on Github](https://github.com/docker/swarm/pulls). - -For more information and resources, please visit the [Getting Help project page](https://docs.docker.com/project/get-help/). +- [Docker Swarm overview](overview.md) +- [Scheduler strategies](scheduler/strategy.md) +- [Scheduler filters](scheduler/filter.md) +- [Swarm API](swarm-api.md) diff --git a/docs/install-manual.md b/docs/install-manual.md index bf0c8dc368..263b0a5b84 100644 --- a/docs/install-manual.md +++ b/docs/install-manual.md @@ -4,8 +4,7 @@ title = "Create a swarm for development" description = "Swarm: a Docker-native clustering system" keywords = ["docker, swarm, clustering"] [menu.main] -parent="smn_workw_swarm" -weight=2 +parent="workw_swarm" +++ @@ -15,7 +14,7 @@ This section tells you how to create a Docker Swarm on your network to use only > **Caution**: Only use this set up if your network environment is secured by a firewall or other measures. -## Prerequisites +## Prerequisites You install Docker Swarm on a single system which is known as your Docker Swarm manager. You create the cluster, or swarm, on one or more additional nodes on @@ -56,7 +55,7 @@ The easiest way to get started with Swarm is to use the 1. Create a Swarm cluster using the `docker` command. $ docker run --rm swarm create - 6856663cdefdec325839a4b7e1de38e8 # + 6856663cdefdec325839a4b7e1de38e8 # The `create` command returns a unique cluster ID (`cluster_id`). You'll need this ID when starting the Docker Swarm agent on a node. @@ -90,7 +89,7 @@ available in default docker installs. Once you have your nodes established, set up a manager to control the swarm. -1. Start the Swarm manager on any machine or your laptop. +1. Start the Swarm manager on any machine or your laptop. The following command illustrates how to do this: @@ -124,7 +123,7 @@ Once you have your nodes established, set up a manager to control the swarm. In that case, be sure to unset `DOCKER_TLS_VERIFY` with: $ unset DOCKER_TLS_VERIFY - + ## Using the docker CLI You can now use the regular Docker CLI to access your nodes: diff --git a/docs/install-w-machine.md b/docs/install-w-machine.md index c777b4ab85..69d56f78c7 100644 --- a/docs/install-w-machine.md +++ b/docs/install-w-machine.md @@ -1,12 +1,10 @@ diff --git a/docs/multi-manager-setup.md b/docs/multi-manager-setup.md index 9184f7a700..7f9379e775 100644 --- a/docs/multi-manager-setup.md +++ b/docs/multi-manager-setup.md @@ -1,10 +1,10 @@ diff --git a/docs/networking.md b/docs/networking.md index 76fb469d31..ddd2245658 100644 --- a/docs/networking.md +++ b/docs/networking.md @@ -1,15 +1,14 @@ -# Networking +# Swarm and container networks Docker Swarm is fully compatible with Docker's networking features. This includes the multi-host networking feature which allows creation of custom @@ -133,4 +132,4 @@ from `node-0`. - [Docker Swarm overview](index.md) - [Scheduler strategies](scheduler/strategy.md) - [Scheduler filters](scheduler/filter.md) -- [Swarm API](api/swarm-api.md) +- [Swarm API](swarm-api.md) diff --git a/docs/overview.md b/docs/overview.md new file mode 100644 index 0000000000..46ceb98955 --- /dev/null +++ b/docs/overview.md @@ -0,0 +1,77 @@ + + +# Docker Swarm overview + +Docker Swarm is native clustering for Docker. It turns a pool of Docker hosts +into a single, virtual Docker host. Because Docker Swarm serves the standard +Docker API, any tool that already communicates with a Docker daemon can use +Swarm to transparently scale to multiple hosts. Supported tools include, but +are not limited to, the following: + +- Dokku +- Docker Compose +- Krane +- Jenkins + +And of course, the Docker client itself is also supported. + +Like other Docker projects, Docker Swarm follows the "swap, plug, and play" +principle. As initial development settles, an API will develop to enable +pluggable backends. This means you can swap out the scheduling backend +Docker Swarm uses out-of-the-box with a backend you prefer. Swarm's swappable design provides a smooth out-of-box experience for most use cases, and allows large-scale production deployments to swap for more powerful backends, like Mesos. + +## Understand swarm creation + +The first step to creating a swarm on your network is to pull the Docker Swarm image. Then, using Docker, you configure the swarm manager and all the nodes to run Docker Swarm. This method requires that you: + +* open a TCP port on each node for communication with the swarm manager +* install Docker on each node +* create and manage TLS certificates to secure your swarm + +As a starting point, the manual method is best suited for experienced administrators or programmers contributing to Docker Swarm. The alternative is to use `docker-machine` to install a swarm. + +Using Docker Machine, you can quickly install a Docker Swarm on cloud providers or inside your own data center. If you have VirtualBox installed on your local machine, you can quickly build and explore Docker Swarm in your local environment. This method automatically generates a certificate to secure your swarm. + +Using Docker Machine is the best method for users getting started with Swarm for the first time. To try the recommended method of getting started, see [Get Started with Docker Swarm](install-w-machine.md). + +If you are interested manually installing or interested in contributing, see [Create a swarm for development](install-manual.md). + +## Discovery services + +To dynamically configure and manage the services in your containers, you use a discovery backend with Docker Swarm. For information on which backends are available, see the [Discovery service](discovery.md) documentation. + +## Advanced Scheduling + +To learn more about advanced scheduling, see the +[strategies](scheduler/strategy.md) and [filters](scheduler/filter.md) +documents. + +## Swarm API + +The [Docker Swarm API](swarm-api.md) is compatible with +the [Docker remote +API](http://docs.docker.com/reference/api/docker_remote_api/), and extends it +with some new endpoints. + +# Getting help + +Docker Swarm is still in its infancy and under active development. If you need +help, would like to contribute, or simply want to talk about the project with +like-minded individuals, we have a number of open channels for communication. + +* To report bugs or file feature requests: please use the [issue tracker on Github](https://github.com/docker/swarm/issues). + +* To talk about the project with people in real time: please join the `#docker-swarm` channel on IRC. + +* To contribute code or documentation changes: please submit a [pull request on Github](https://github.com/docker/swarm/pulls). + +For more information and resources, please visit the [Getting Help project page](https://docs.docker.com/project/get-help/). diff --git a/docs/scheduler/filter.md b/docs/scheduler/filter.md index 15e80e8313..875b217bc9 100644 --- a/docs/scheduler/filter.md +++ b/docs/scheduler/filter.md @@ -1,15 +1,15 @@ -# Filters +# Swarm filters Filters tell Docker Swarm scheduler which nodes to use when creating and running a container. @@ -505,4 +505,4 @@ without a container that satisfies `redis*` - [Docker Swarm overview](../index.md) - [Discovery options](../discovery.md) - [Scheduler strategies](strategy.md) -- [Swarm API](../api/swarm-api.md) +- [Swarm API](../swarm-api.md) diff --git a/docs/scheduler/index.md b/docs/scheduler/index.md index adc481bf98..51a799c44f 100644 --- a/docs/scheduler/index.md +++ b/docs/scheduler/index.md @@ -1,10 +1,12 @@ diff --git a/docs/scheduler/strategy.md b/docs/scheduler/strategy.md index 666e1ded76..dea39e68f6 100644 --- a/docs/scheduler/strategy.md +++ b/docs/scheduler/strategy.md @@ -1,15 +1,15 @@ -# Strategies +# Docker Swarm strategies The Docker Swarm scheduler features multiple strategies for ranking nodes. The strategy you choose determines how Swarm computes ranking. When you run a new @@ -125,4 +125,4 @@ strategy prefers the node with most containers. - [Docker Swarm overview](../index.md) - [Discovery options](../discovery.md) - [Scheduler filters](filter.md) -- [Swarm API](../api/swarm-api.md) +- [Swarm API](../swarm-api.md) diff --git a/docs/api/swarm-api.md b/docs/swarm-api.md similarity index 97% rename from docs/api/swarm-api.md rename to docs/swarm-api.md index 11b492482a..d571a95cee 100644 --- a/docs/api/swarm-api.md +++ b/docs/swarm-api.md @@ -1,11 +1,12 @@