diff --git a/_data/engine-cli/docker.yaml b/_data/engine-cli/docker.yaml index 2e2ed758e7..ff1efe250b 100644 --- a/_data/engine-cli/docker.yaml +++ b/_data/engine-cli/docker.yaml @@ -10,7 +10,6 @@ cname: - docker context - docker cp - docker create -- docker deploy - docker diff - docker engine - docker events @@ -70,7 +69,6 @@ clink: - docker_context.yaml - docker_cp.yaml - docker_create.yaml -- docker_deploy.yaml - docker_diff.yaml - docker_engine.yaml - docker_events.yaml diff --git a/_data/engine-cli/docker_deploy.yaml b/_data/engine-cli/docker_deploy.yaml deleted file mode 100644 index d34d90655f..0000000000 --- a/_data/engine-cli/docker_deploy.yaml +++ /dev/null @@ -1,134 +0,0 @@ -command: docker deploy -short: Deploy a new stack or update an existing stack -long: |- - Create and update a stack from a `compose` or a `dab` file on the swarm. This command - has to be run targeting a manager node. -usage: docker deploy [OPTIONS] STACK -pname: docker -plink: docker.yaml -options: -- option: bundle-file - value_type: string - description: Path to a Distributed Application Bundle file - deprecated: false - experimental: true - experimentalcli: false - kubernetes: false - swarm: true -- option: compose-file - shorthand: c - value_type: stringSlice - default_value: '[]' - description: Path to a Compose file, or "-" to read from stdin - deprecated: false - min_api_version: "1.25" - experimental: false - experimentalcli: false - kubernetes: false - swarm: false -- option: namespace - value_type: string - description: Kubernetes namespace to use - deprecated: false - experimental: false - experimentalcli: false - kubernetes: true - swarm: false -- option: prune - value_type: bool - default_value: "false" - description: Prune services that are no longer referenced - deprecated: false - min_api_version: "1.27" - experimental: false - experimentalcli: false - kubernetes: false - swarm: true -- option: resolve-image - value_type: string - default_value: always - description: | - Query the registry to resolve image digest and supported platforms ("always"|"changed"|"never") - deprecated: false - min_api_version: "1.30" - experimental: false - experimentalcli: false - kubernetes: false - swarm: true -- option: with-registry-auth - value_type: bool - default_value: "false" - description: Send registry authentication details to Swarm agents - deprecated: false - experimental: false - experimentalcli: false - kubernetes: false - swarm: true -examples: |- - ### Compose file - - The `deploy` command supports compose file version `3.0` and above. - - ```bash - $ docker stack deploy --compose-file docker-compose.yml vossibility - - Ignoring unsupported options: links - - Creating network vossibility_vossibility - Creating network vossibility_default - Creating service vossibility_nsqd - Creating service vossibility_logstash - Creating service vossibility_elasticsearch - Creating service vossibility_kibana - Creating service vossibility_ghollector - Creating service vossibility_lookupd - ``` - - You can verify that the services were correctly created - - ```bash - $ docker service ls - - ID NAME MODE REPLICAS IMAGE - 29bv0vnlm903 vossibility_lookupd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4awt47624qwh vossibility_nsqd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4tjx9biia6fs vossibility_elasticsearch replicated 1/1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa - 7563uuzr9eys vossibility_kibana replicated 1/1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03 - 9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe - axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba - ``` - - ### DAB file - - ```bash - $ docker stack deploy --bundle-file vossibility-stack.dab vossibility - - Loading bundle from vossibility-stack.dab - Creating service vossibility_elasticsearch - Creating service vossibility_kibana - Creating service vossibility_logstash - Creating service vossibility_lookupd - Creating service vossibility_nsqd - Creating service vossibility_vossibility-collector - ``` - - You can verify that the services were correctly created: - - ```bash - $ docker service ls - - ID NAME MODE REPLICAS IMAGE - 29bv0vnlm903 vossibility_lookupd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4awt47624qwh vossibility_nsqd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4tjx9biia6fs vossibility_elasticsearch replicated 1/1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa - 7563uuzr9eys vossibility_kibana replicated 1/1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03 - 9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe - axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba - ``` -deprecated: false -min_api_version: "1.25" -experimental: true -experimentalcli: false -kubernetes: false -swarm: false - diff --git a/_data/engine-cli/docker_stack_deploy.yaml b/_data/engine-cli/docker_stack_deploy.yaml index e4a3992e52..5f30bad704 100644 --- a/_data/engine-cli/docker_stack_deploy.yaml +++ b/_data/engine-cli/docker_stack_deploy.yaml @@ -2,20 +2,12 @@ command: docker stack deploy aliases: up short: Deploy a new stack or update an existing stack long: |- - Create and update a stack from a `compose` or a `dab` file on the swarm. This command - has to be run targeting a manager node. + Create and update a stack from a `compose` file on the swarm. This command has to + be run targeting a manager node. usage: docker stack deploy [OPTIONS] STACK pname: docker stack plink: docker_stack.yaml options: -- option: bundle-file - value_type: string - description: Path to a Distributed Application Bundle file - deprecated: false - experimental: true - experimentalcli: false - kubernetes: false - swarm: true - option: compose-file shorthand: c value_type: stringSlice @@ -151,34 +143,6 @@ examples: |- 9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba ``` - - ### DAB file - - ```bash - $ docker stack deploy --bundle-file vossibility-stack.dab vossibility - - Loading bundle from vossibility-stack.dab - Creating service vossibility_elasticsearch - Creating service vossibility_kibana - Creating service vossibility_logstash - Creating service vossibility_lookupd - Creating service vossibility_nsqd - Creating service vossibility_vossibility-collector - ``` - - You can verify that the services were correctly created: - - ```bash - $ docker service ls - - ID NAME MODE REPLICAS IMAGE - 29bv0vnlm903 vossibility_lookupd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4awt47624qwh vossibility_nsqd replicated 1/1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 - 4tjx9biia6fs vossibility_elasticsearch replicated 1/1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa - 7563uuzr9eys vossibility_kibana replicated 1/1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03 - 9gc5m4met4he vossibility_logstash replicated 1/1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe - axqh55ipl40h vossibility_vossibility-collector replicated 1/1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba - ``` deprecated: false min_api_version: "1.25" experimental: false diff --git a/_data/toc.yaml b/_data/toc.yaml index 1d49412636..0b4819da30 100644 --- a/_data/toc.yaml +++ b/_data/toc.yaml @@ -913,8 +913,6 @@ reference: title: Command-line completion - path: /compose/reference/build/ title: build - - path: /compose/reference/bundle/ - title: bundle - path: /compose/reference/config/ title: config - path: /compose/reference/create/ @@ -1145,8 +1143,6 @@ manuals: title: Install Compose - path: /compose/gettingstarted/ title: Getting started - - path: /compose/bundles/ - title: Docker stacks and distributed application bundles - path: /compose/swarm/ title: Using Compose with Swarm - path: /compose/env-file/ diff --git a/compose/bundles.md b/compose/bundles.md deleted file mode 100644 index 6dac5deacd..0000000000 --- a/compose/bundles.md +++ /dev/null @@ -1,211 +0,0 @@ ---- -advisory: experimental -description: Description of Docker and Compose's experimental support for application bundles -keywords: documentation, docs, docker, compose, bundles, stacks -title: Docker stacks and distributed application bundles (experimental) ---- - -> **Note**: This is a modified copy of the [Docker Stacks and Distributed Application -> Bundles](https://github.com/moby/moby/blob/v1.12.0-rc4/experimental/docker-stacks-and-bundles.md) -> document in the [docker/docker-ce repo](https://github.com/docker/docker-ce). It's been updated to accurately reflect newer releases. - -## Overview - -A Dockerfile can be built into an image, and containers can be created from -that image. Similarly, a `docker-compose.yml` can be built into a **distributed -application bundle**, and **stacks** can be created from that bundle. In that -sense, the bundle is a multi-services distributable image format. - -Docker Stacks and Distributed Application Bundles started as experimental -features introduced in Docker 1.12 and Docker Compose 1.8, alongside the concept -of swarm mode, and nodes and services in the Engine API. Neither Docker Engine -nor the Docker Registry support distribution of bundles, and the concept of a -`bundle` is not the emphasis for new releases going forward. - -However, [swarm mode](/engine/swarm/index.md), multi-service applications, and -stack files now are fully supported. A stack file is a particular type of -[version 3 Compose file](/compose/compose-file/index.md). - -## Produce a bundle - -The easiest way to produce a bundle is to generate it using `docker-compose` -from an existing `docker-compose.yml`. Of course, that's just *one* possible way -to proceed, in the same way that `docker build` isn't the only way to produce a -Docker image. - -From `docker-compose`: - -```bash -$ docker-compose bundle -WARNING: Unsupported key 'network_mode' in services.nsqd - ignoring -WARNING: Unsupported key 'links' in services.nsqd - ignoring -WARNING: Unsupported key 'volumes' in services.nsqd - ignoring -[...] -Wrote bundle to vossibility-stack.dab -``` - -## Create a stack from a bundle - -> **Note**: Because support for stacks and bundles is in the experimental stage, -> you need to install an experimental build of Docker Engine to use it. -> -> If you're on Mac or Windows, download the “Beta channel” version of -> [Docker Desktop for Mac](/docker-for-mac/) or -> [Docker Desktop for Windows](/docker-for-windows/) to install -> it. If you're on Linux, follow the instructions in the -> [experimental build README](https://github.com/docker/cli/blob/master/experimental/README.md). - -A stack is created using the `docker deploy` command: - -```bash -# docker deploy --help - -Usage: docker deploy [OPTIONS] STACK - -Create and update a stack - -Options: - --file string Path to a Distributed Application Bundle file (Default: STACK.dab) - --help Print usage - --with-registry-auth Send registry authentication details to Swarm agents -``` - -Let's deploy the stack created before: - -```bash -# docker deploy vossibility-stack -Loading bundle from vossibility-stack.dab -Creating service vossibility-stack_elasticsearch -Creating service vossibility-stack_kibana -Creating service vossibility-stack_logstash -Creating service vossibility-stack_lookupd -Creating service vossibility-stack_nsqd -Creating service vossibility-stack_vossibility-collector -``` - -We can verify that services were correctly created: - -```bash -# docker service ls -ID NAME REPLICAS IMAGE -COMMAND -29bv0vnlm903 vossibility-stack_lookupd 1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 /nsqlookupd -4awt47624qwh vossibility-stack_nsqd 1 nsqio/nsq@sha256:eeba05599f31eba418e96e71e0984c3dc96963ceb66924dd37a47bf7ce18a662 /nsqd --data-path=/data --lookupd-tcp-address=lookupd:4160 -4tjx9biia6fs vossibility-stack_elasticsearch 1 elasticsearch@sha256:12ac7c6af55d001f71800b83ba91a04f716e58d82e748fa6e5a7359eed2301aa -7563uuzr9eys vossibility-stack_kibana 1 kibana@sha256:6995a2d25709a62694a937b8a529ff36da92ebee74bafd7bf00e6caf6db2eb03 -9gc5m4met4he vossibility-stack_logstash 1 logstash@sha256:2dc8bddd1bb4a5a34e8ebaf73749f6413c101b2edef6617f2f7713926d2141fe logstash -f /etc/logstash/conf.d/logstash.conf -axqh55ipl40h vossibility-stack_vossibility-collector 1 icecrime/vossibility-collector@sha256:f03f2977203ba6253988c18d04061c5ec7aab46bca9dfd89a9a1fa4500989fba --config /config/config.toml --debug -``` - -## Manage stacks - -Stacks are managed using the `docker stack` command: - -```bash -# docker stack --help - -Usage: docker stack COMMAND - -Manage Docker stacks - -Options: - --help Print usage - -Commands: - config Print the stack configuration - deploy Create and update a stack - rm Remove the stack - services List the services in the stack - tasks List the tasks in the stack - -Run 'docker stack COMMAND --help' for more information on a command. -``` - -## Bundle file format - -Distributed application bundles are described in a JSON format. When bundles -are persisted as files, the file extension is `.dab`. - -A bundle has two top-level fields: `version` and `services`. The version used -by Docker 1.12 tools is `0.1`. - -`services` in the bundle are the services that comprise the app. They -correspond to the new `Service` object introduced in the 1.12 Docker Engine API. - -A service has the following fields: - -
string
- postgres@sha256:e0a230a9f5b4e1b8b03bb3e8cf7322b0e42b7838c5c87f4545edb48f5eb8f077
- []string
- []string
- []string
- map[string]string
- []Port
- Port
(int
) and
- Protocol
(string
). A service description can
- only specify the container port to be exposed. These ports can be
- mapped on runtime hosts at the operator's discretion.
- string
- string
- <name|uid>[:<group|gid>]
).
- []string
-