Docker Swarm ドキュメント参考日本語訳 目次

参考訳です。
原文：https://docs.docker.com/swarm/

# Docker Swarm

Docker Swam （Swarm = 群れ、大群）とは Docker に対応する純正クラスタリングです。Docker ホストのプール（集まり）を、作成したりアクセスできます。そのホストには Docker ツール群一式が揃っています。Docker Swarm は標準 Docker API を扱えるので、既に Docker デーモンと通信できるツールを使い、Swarm で複数のホストへ透過的にスケールできます。サポートしているツールは以下のものですが、これだけに限定されるものではありません：

* Dokku
* Docker Compose
* Krane
* Jenkins

そして、もちろん Docker クライアント自身もまたサポートされています。

他の Docker プロジェクトのように、Docker Swarm は "swap, plug, and play"（交換して、取り付けて、実行）の原理に従います。開発初期においては、API はバックエンドと接続可能（pluggable）なように、開発することに落ち着きました。つまり、スケジューリングのバックエンドを任意なものから、Docker Swarm に置き換えられることを意味します。Swarm は交換可能な設計です。そのため、多くのユース・ケース（事例）において、スムーズに独創的な経験を提供します。また、Mesos のような、より強力なバックエンドに取り替えて、大規模なプロダクション（本番環境）へのデプロイもできるようになります。

メモ：現時点の Swarm はベータ版なので、記述内容を変更する可能性があります。そのため、本番環境における利用はまだ推奨しません。

## Swarm クラスタ作成を理解する

自分のネットワーク上で Swarm クラスタ（訳注；原文では"swarm"=群れ、と書かれていますが、日本語では抽象的なため、以下"Swarm クラスタ"と訳しています）を形成するには、まず Docker Swarm イメージを取得します。それから Docker を使い、swarm manager の設定と全てのノードで  Docker Swarm を実行します。この手順で必要となるのは：
o
* swarm manager と各々のノードと通信ができるよう TCP ポートを開く
* 各々のノードに Docker をインストールする
* クラスタを安全にするため、TLS 証明書を作成・管理する

利用開始の時点では、実験的な管理や Docker Swarm へのプログラミングの貢献のために、手動で行うのはベストな方法です。別の方法としては、`docker-machine` を使って swarm をインストールする方法もあります。

Docker Machine を使えば、Docker Swarm をクラウド・プロバイダや自分のデータセンタに素早くインストールできます。ローカルのマシン上に VirtualBox をインストールしていれば、ローカル環境上で Docker Swarm を素早く構築し、試すことができます。Docker Machine はクラスタを安全にするため、自動的に証明書を生成します。

始めて Docker Swarm を使うのであれば、Docker Machine を使って始める方法が一番です。推奨する方法で使って見るには、[Get Started with Docker Swarm（Docker Swarmをはじめましょう）](http://qiita.com/zembutsu/items/d4db18c0f12356f11112) をお読みください。

もし手動のインストールや貢献に興味があれば、[Create a swarm for development（開発用の swarm を作成）](http://qiita.com/zembutsu/items/9edb9b40b8e7201c9fae)をお読みください。

## サービスのディスカバリ（発見）

コンテナ内のサービスを動的に設定・管理するには、Docker Swarm とディスカバリ用のバックエンドを使います。利用可能なバックエンドに関する情報は、[Discovery Service（サービスの発見）](http://qiita.com/zembutsu/items/d1ab2a23e0bf1507975d)ドキュメントをお読みください。

## 高度なスケジューリング

高度なスケジューリングについては、[strategies（ストラテジ）](http://qiita.com/zembutsu/items/c89e138196a34da28919) と [filetes（フィルタ ）](http://qiita.com/zembutsu/items/cee53ce370b0c13149e5)のドキュメントをお読みください。

## Swarm API

[Docker Swarm API](https://docs.docker.com/swarm/api/swarm-api) は [Docker remote API](http://docs.docker.com/reference/api/docker_remote_api/) と互換性があるので、新しいエンドポイントができたときは、同時に機能拡張されます。

# ヘルプを得るには

Docker Swarm はまだ初期段階であり、活発に開発中です。ヘルプが必要であれば、コントリビューターや、プロジェクトで同じことを考えている個人に話しかけてください。私達はコミュニケーションのためのチャンネルをオープンにしています。

* バグや機能リクエスト：[GitHub の issue tracker](https://github.com/docker/machine/issues)をお使いください。

* プロジェクトの方とリアルタイムに話したい：IRC の `#docker-swarm` チャンネルに参加ください。

* コードの貢献やドキュメントの変更：[GitHub 上でプルリクエスト](https://github.com/docker/machine/pulls)をください。

より詳細な情報やリソースについては、[Getting Help project page](https://docs.docker.com/project/get-help/) をご覧ください。

----
### 関連 Qiita

DockerSwarm - Docker Swarm: Docker Swam を始めましょう - Qiita
http://qiita.com/zembutsu/items/d4db18c0f12356f11112

DockerSwarm - Docker Swarm: 開発用の Swam クラスタの作成 - Qiita
http://qiita.com/zembutsu/items/9edb9b40b8e7201c9fae

DockerSwarm - Docker Swarm: ディスカバリ - Qiita
http://qiita.com/zembutsu/items/d1ab2a23e0bf1507975d

DockerSwarm - Docker Swarm: フィルタ - Qiita
http://qiita.com/zembutsu/items/cee53ce370b0c13149e5

DockerSwarm - Docker Swarm: Strategies（ストラテジ） - Qiita
http://qiita.com/zembutsu/items/c89e138196a34da28919