github.com/cspotcode/docker-cli@v20.10.0-rc1.0.20201201121459-3faad7acc5b8+incompatible/docs/deprecated.md (about)

     1  ---
     2  aliases: ["/engine/misc/deprecated/"]
     3  description: "Deprecated Features."
     4  keywords: "docker, documentation, about, technology, deprecate"
     5  ---
     6  
     7  <!-- This file is maintained within the docker/cli GitHub
     8       repository at https://github.com/docker/cli/. Make all
     9       pull requests against that repo. If you see this file in
    10       another repository, consider it read-only there, as it will
    11       periodically be overwritten by the definitive file. Pull
    12       requests which include edits to this file in other repositories
    13       will be rejected.
    14  -->
    15  
    16  # Deprecated Engine Features
    17  
    18  This page provides an overview of features that are deprecated in Engine. Changes
    19  in packaging, and supported (Linux) distributions are not included. To learn
    20  about end of support for Linux distributions, refer to the
    21  [release notes](https://docs.docker.com/engine/release-notes/).
    22  
    23  ## Feature Deprecation Policy
    24  
    25  As changes are made to Docker there may be times when existing features need to
    26  be removed or replaced with newer features. Before an existing feature is removed
    27  it is labeled as "deprecated" within the documentation and remains in Docker for
    28  at least one stable release unless specified explicitly otherwise. After that time
    29  it may be removed.
    30  
    31  Users are expected to take note of the list of deprecated features each release
    32  and plan their migration away from those features, and (if applicable) towards
    33  the replacement features as soon as possible.
    34  
    35  ## Deprecated Engine Features
    36  
    37  The table below provides an overview of the current status of deprecated features:
    38  
    39  - **Deprecated**: the feature is marked "deprecated" and should no longer be used.
    40    The feature may be removed, disabled, or change behavior in a future release.
    41    The _"Deprecated"_ column contains the release in which the feature was marked 
    42    deprecated, whereas the _"Remove"_ column contains a tentative release in which
    43    the feature is to be removed. If no release is included in the _"Remove"_ column,
    44    the release is yet to be decided on.
    45  - **Removed**: the feature was removed, disabled, or hidden. Refer to the linked
    46    section for details. Some features are "soft" deprecated, which means that they
    47    remain functional for backward compatibility, and to allow users to migrate to
    48    alternatives. In such cases, a warning may be printed, and users should not rely
    49    on this feature.
    50  
    51  Status     | Feature                                                                                                                            | Deprecated | Remove
    52  -----------|------------------------------------------------------------------------------------------------------------------------------------|------------|------------
    53  Deprecated | [Linux containers on Windows (LCOW)](#linux-containers-on-windows-lcow-experimental)                                               | v20.10     | -
    54  Deprecated | [Kernel memory limit](#kernel-memory-limit)                                                                                        | v20.10     | -
    55  Deprecated | [Classic Swarm and overlay networks using external key/value stores](#classic-swarm-and-overlay-networks-using-cluster-store)      | v20.10     | -
    56  Deprecated | [Support for the legacy `~/.dockercfg` configuration file for authentication](#support-for-legacy-dockercfg-configuration-files)   | v20.10     | -
    57  Deprecated | [CLI plugins support](#cli-plugins-support)                                                                                        | v20.10     | -
    58  Deprecated | [Dockerfile legacy `ENV name value` syntax](#dockerfile-legacy-env-name-value-syntax)                                              | v20.10     | -
    59  Removed    | [`docker build --stream` flag (experimental)](#docker-build---stream-flag-experimental)                                            | v20.10     | v20.10
    60  Deprecated | [Configuration options for experimental CLI features](#configuration-options-for-experimental-cli-features)                        | v19.03     | v20.10
    61  Deprecated | [Pushing and pulling with image manifest v2 schema 1](#pushing-and-pulling-with-image-manifest-v2-schema-1)                        | v19.03     | v20.10
    62  Removed    | [`docker engine` subcommands](#docker-engine-subcommands)                                                                          | v19.03     | v20.10
    63  Removed    | [Top-level `docker deploy` subcommand (experimental)](#top-level-docker-deploy-subcommand-experimental)                            | v19.03     | v20.10
    64  Removed    | [`docker stack deploy` using "dab" files (experimental)](#docker-stack-deploy-using-dab-files-experimental)                        | v19.03     | v20.10
    65  Deprecated | [AuFS storage driver](#aufs-storage-driver)                                                                                        | v19.03     | -
    66  Deprecated | [Legacy "overlay" storage driver](#legacy-overlay-storage-driver)                                                                  | v18.09     | -
    67  Deprecated | [Device mapper storage driver](#device-mapper-storage-driver)                                                                      | v18.09     | -
    68  Removed    | [Use of reserved namespaces in engine labels](#use-of-reserved-namespaces-in-engine-labels)                                        | v18.06     | v20.10
    69  Removed    | [`--disable-legacy-registry` override daemon option](#--disable-legacy-registry-override-daemon-option)                            | v17.12     | v19.03
    70  Removed    | [Interacting with V1 registries](#interacting-with-v1-registries)                                                                  | v17.06     | v17.12
    71  Removed    | [Asynchronous `service create` and `service update` as default](#asynchronous-service-create-and-service-update-as-default)        | v17.05     | v17.10
    72  Removed    | [`-g` and `--graph` flags on `dockerd`](#-g-and---graph-flags-on-dockerd)                                                          | v17.05     | -
    73  Deprecated | [Top-level network properties in NetworkSettings](#top-level-network-properties-in-networksettings)                                | v1.13      | v17.12
    74  Removed    | [`filter` param for `/images/json` endpoint](#filter-param-for-imagesjson-endpoint)                                                | v1.13      | v20.10
    75  Removed    | [`repository:shortid` image references](#repositoryshortid-image-references)                                                       | v1.13      | v17.12
    76  Removed    | [`docker daemon` subcommand](#docker-daemon-subcommand)                                                                            | v1.13      | v17.12
    77  Removed    | [Duplicate keys with conflicting values in engine labels](#duplicate-keys-with-conflicting-values-in-engine-labels)                | v1.13      | v17.12
    78  Deprecated | [`MAINTAINER` in Dockerfile](#maintainer-in-dockerfile)                                                                            | v1.13      | -
    79  Deprecated | [API calls without a version](#api-calls-without-a-version)                                                                        | v1.13      | v17.12
    80  Removed    | [Backing filesystem without `d_type` support for overlay/overlay2](#backing-filesystem-without-d_type-support-for-overlayoverlay2) | v1.13      | v17.12
    81  Removed    | [`--automated` and `--stars` flags on `docker search`](#--automated-and---stars-flags-on-docker-search)                            | v1.12      | v20.10
    82  Deprecated | [`-h` shorthand for `--help`](#-h-shorthand-for---help)                                                                            | v1.12      | v17.09
    83  Removed    | [`-e` and `--email` flags on `docker login`](#-e-and---email-flags-on-docker-login)                                                | v1.11      | v17.06
    84  Deprecated | [Separator (`:`) of `--security-opt` flag on `docker run`](#separator--of---security-opt-flag-on-docker-run)                       | v1.11      | v17.06
    85  Deprecated | [Ambiguous event fields in API](#ambiguous-event-fields-in-api)                                                                    | v1.10      | -
    86  Removed    | [`-f` flag on `docker tag`](#-f-flag-on-docker-tag)                                                                                | v1.10      | v1.12
    87  Removed    | [HostConfig at API container start](#hostconfig-at-api-container-start)                                                            | v1.10      | v1.12
    88  Removed    | [`--before` and `--since` flags on `docker ps`](#--before-and---since-flags-on-docker-ps)                                          | v1.10      | v1.12
    89  Removed    | [Driver-specific log tags](#driver-specific-log-tags)                                                                              | v1.9       | v1.12
    90  Removed    | [Docker Content Trust `ENV` passphrase variables name change](#docker-content-trust-env-passphrase-variables-name-change)          | v1.9       | v1.12
    91  Removed    | [`/containers/(id or name)/copy` endpoint](#containersid-or-namecopy-endpoint)                                                     | v1.8       | v1.12
    92  Removed    | [LXC built-in exec driver](#lxc-built-in-exec-driver)                                                                              | v1.8       | v1.10
    93  Removed    | [Old Command Line Options](#old-command-line-options)                                                                              | v1.8       | v1.10
    94  Removed    | [`--api-enable-cors` flag on `dockerd`](#--api-enable-cors-flag-on-dockerd)                                                        | v1.6       | v17.09
    95  Removed    | [`--run` flag on `docker commit`](#--run-flag-on-docker-commit)                                                                    | v0.10      | v1.13
    96  Removed    | [Three arguments form in `docker import`](#three-arguments-form-in-docker-import)                                                  | v0.6.7     | v1.12
    97  
    98  ### Linux containers on Windows (LCOW) (experimental)
    99  
   100  **Deprecated in Release: v20.10**
   101  
   102  The experimental feature to run Linux containers on Windows (LCOW) was introduced
   103  as a technical preview in Docker 17.09. While many enhancements were made after
   104  its introduction, the feature never reached completeness, and development has
   105  now stopped in favor of running docker natively on Linux in WSL2.
   106  
   107  Developers who want to run Linux workloads on a Windows host are encouraged to use
   108  [Docker Desktop with WSL2](https://docs.docker.com/docker-for-windows/wsl/) instead.
   109  
   110  ### Kernel memory limit
   111  
   112  **Deprecated in Release: v20.10**
   113  
   114  Specifying kernel memory limit (`docker run --kernel-memory`) is now marked as deprecated,
   115  as [Linux kernel deprecated `kmem.limit_in_bytes` in v5.4](https://github.com/torvalds/linux/commit/0158115f702b0ba208ab0b5adf44cae99b3ebcc7).
   116  
   117  ### Classic Swarm and overlay networks using cluster store
   118  
   119  **Deprecated in Release: v20.10**
   120  
   121  Standalone ("classic") Swarm has been deprecated, and with that the use of overlay
   122  networks using an external key/value store. The corresponding`--cluster-advertise`,
   123  `--cluster-store`, and `--cluster-store-opt` daemon options have been marked
   124  deprecated, and will be disabled or removed in a future release.
   125  
   126  
   127  ### Support for legacy `~/.dockercfg` configuration files
   128  
   129  **Deprecated in Release: v20.10**
   130  
   131  The docker CLI up until v1.7.0 used the `~/.dockercfg` file to store credentials
   132  after authenticating to a registry (`docker login`). Docker v1.7.0 replaced this
   133  file with a new CLI configuration file, located in `~/.docker/config.json`. When
   134  implementing the new configuration file, the old file (and file-format) was kept
   135  as a fall-back, to assist existing users with migrating to the new file.
   136  
   137  Given that the old file format encourages insecure storage of credentials
   138  (credentials are stored unencrypted), and that no version of the CLI since
   139  Docker v1.7.0 has created this file, the file is marked deprecated, and support
   140  for this file will be removed in a future release.
   141  
   142  ### Configuration options for experimental CLI features
   143  
   144  The `DOCKER_CLI_EXPERIMENTAL` environment variable and the corresponding `experimental`
   145  field in the CLI configuration file are deprecated. Experimental features will be
   146  enabled by default, and these configuration options will no longer be functional.
   147  
   148  ### CLI plugins support
   149  
   150  **Deprecated in Release: v20.10**
   151  
   152  CLI Plugin API is now marked as deprecated.
   153  
   154  ### Dockerfile legacy `ENV name value` syntax
   155  
   156  **Deprecated in Release: v20.10**
   157  
   158  The Dockerfile `ENV` instruction allows values to be set using either `ENV name=value`
   159  or `ENV name value`. The latter (`ENV name value`) form can be ambiguous, for example,
   160  the following defines a single env-variable (`ONE`) with value `"TWO= THREE=world"`,
   161  but may have intended to be setting three env-vars:
   162  
   163  ```dockerfile
   164  ENV ONE TWO= THREE=world
   165  ```
   166  
   167  This format also does not allow setting multiple environment-variables in a single
   168  `ENV` line in the Dockerfile.
   169  
   170  Use of the `ENV name value` syntax is discouraged, and may be removed in a future
   171  release. Users are encouraged to update their Dockerfiles to use the `ENV name=value`
   172  syntax, for example:
   173  
   174  ```dockerfile
   175  ENV ONE="" TWO="" THREE="world"
   176  ```
   177  
   178  ### `docker build --stream` flag (experimental)
   179  
   180  **Deprecated in Release: v20.10**
   181  **Removed in Release: v20.10**
   182  
   183  Docker v17.07 introduced an experimental `--stream` flag on `docker build` which
   184  allowed the build-context to be incrementally sent to the daemon, instead of
   185  unconditionally sending the whole build-context.
   186  
   187  This functionality has been reimplemented as part of BuildKit, which uses streaming
   188  by default and the `--stream` option will be ignored when using the classic builder,
   189  printing a deprecation warning instead.
   190  
   191  Users that want to use this feature are encouraged to enable BuildKit by setting
   192  the `DOCKER_BUILDKIT=1` environment variable or through the daemon or CLI configuration
   193  files.
   194  
   195  ### Pushing and pulling with image manifest v2 schema 1
   196  
   197  **Deprecated in Release: v19.03**
   198  
   199  **Target For Removal In Release: v20.10**
   200  
   201  The image manifest
   202  [v2 schema 1](https://github.com/docker/distribution/blob/fda42e5ef908bdba722d435ff1f330d40dfcd56c/docs/spec/manifest-v2-1.md)
   203  format is deprecated in favor of the
   204  [v2 schema 2](https://github.com/docker/distribution/blob/fda42e5ef908bdba722d435ff1f330d40dfcd56c/docs/spec/manifest-v2-2.md) format.
   205  
   206  If the registry you are using still supports v2 schema 1, urge their administrators to move to v2 schema 2.
   207  
   208  
   209  ### `docker engine` subcommands
   210  
   211  **Deprecated in Release: v19.03**
   212  
   213  **Removed in Release: v20.10**
   214  
   215  The `docker engine activate`, `docker engine check`, and `docker engine update`
   216  provided an alternative installation method to upgrade Docker Community engines
   217  to Docker Enterprise, using an image-based distribution of the Docker Engine.
   218  
   219  This feature was only available on Linux, and only when executed on a local node.
   220  Given the limitations of this feature, and the feature not getting widely adopted,
   221  the `docker engine` subcommands will be removed, in favor of installation through
   222  standard package  managers.
   223  
   224  
   225  ### Top-level `docker deploy` subcommand (experimental)
   226  
   227  **Deprecated in Release: v19.03**
   228  
   229  **Removed in Release: v20.10**
   230  
   231  The top-level `docker deploy` command (using the "Docker Application Bundle"
   232  (.dab) file format was introduced as an experimental feature in Docker 1.13 /
   233  17.03, but superseded by support for Docker Compose files using the `docker stack deploy`
   234  subcommand.
   235  
   236  
   237  ### `docker stack deploy` using "dab" files (experimental)
   238  
   239  **Deprecated in Release: v19.03**
   240  
   241  **Removed in Release: v20.10**
   242  
   243  With no development being done on this feature, and no active use of the file
   244  format, support for the DAB file format and the top-level docker deploy command
   245  (hidden by default in 19.03), will be removed, in favour of `docker stack deploy`
   246  using compose files.
   247  
   248  
   249  ### AuFS storage driver
   250  
   251  **Deprecated in Release: v19.03**
   252  
   253  The `aufs` storage driver is deprecated in favor of `overlay2`, and will
   254  be removed in a future release. Users of the `aufs` storage driver are
   255  recommended to migrate to a different storage driver, such as `overlay2`, which
   256  is now the default storage driver.
   257  
   258  The `aufs` storage driver facilitates running Docker on distros that have no
   259  support for OverlayFS, such as Ubuntu 14.04 LTS, which originally shipped with
   260  a 3.14 kernel.
   261  
   262  Now that Ubuntu 14.04 is no longer a supported distro for Docker, and `overlay2`
   263  is available to all supported distros (as they are either on kernel 4.x, or have
   264  support for multiple lowerdirs backported), there is no reason to continue
   265  maintenance of the `aufs` storage driver.
   266  
   267  
   268  ### Legacy "overlay" storage driver
   269  
   270  **Deprecated in Release: v18.09**
   271  
   272  The `overlay` storage driver is deprecated in favor of the `overlay2` storage
   273  driver, which has all the benefits of `overlay`, without its limitations (excessive
   274  inode consumption). The legacy `overlay` storage driver will be removed in a future
   275  release. Users of the `overlay` storage driver should migrate to the `overlay2`
   276  storage driver.
   277  
   278  The legacy `overlay` storage driver allowed using overlayFS-backed filesystems
   279  on pre 4.x kernels. Now that all supported distributions are able to run `overlay2`
   280  (as they are either on kernel 4.x, or have support for multiple lowerdirs
   281  backported), there is no reason to keep maintaining the `overlay` storage driver.
   282  
   283  ### Device mapper storage driver
   284  
   285  **Deprecated in Release: v18.09**
   286  
   287  The `devicemapper` storage driver is deprecated in favor of `overlay2`, and will
   288  be removed in a future release. Users of the `devicemapper` storage driver are
   289  recommended to migrate to a different storage driver, such as `overlay2`, which
   290  is now the default storage driver.
   291  
   292  The `devicemapper` storage driver facilitates running Docker on older (3.x) kernels
   293  that have no support for other storage drivers (such as overlay2, or AUFS).
   294  
   295  Now that support for `overlay2` is added to all supported distros (as they are
   296  either on kernel 4.x, or have support for multiple lowerdirs backported), there
   297  is no reason to continue maintenance of the `devicemapper` storage driver.
   298  
   299  
   300  ### Use of reserved namespaces in engine labels
   301  
   302  **Deprecated in Release: v18.06**
   303  
   304  **Removed In Release: v20.10**
   305  
   306  The namespaces `com.docker.*`, `io.docker.*`, and `org.dockerproject.*` in engine labels
   307  were always documented to be reserved, but there was never any enforcement.
   308  
   309  Usage of these namespaces will now cause a warning in the engine logs to discourage their
   310  use, and will error instead in v20.10 and above.
   311  
   312  
   313  ### `--disable-legacy-registry` override daemon option
   314  
   315  **Disabled In Release: v17.12**
   316  
   317  **Removed In Release: v19.03**
   318  
   319  The `--disable-legacy-registry` flag was disabled in Docker 17.12 and will print
   320  an error when used. For this error to be printed, the flag itself is still present,
   321  but hidden. The flag has been removed in Docker 19.03.
   322  
   323  
   324  ### Interacting with V1 registries
   325  
   326  **Disabled By Default In Release: v17.06**
   327  
   328  **Removed In Release: v17.12**
   329  
   330  Version 1.8.3 added a flag (`--disable-legacy-registry=false`) which prevents the
   331  docker daemon from `pull`, `push`, and `login` operations against v1
   332  registries.  Though enabled by default, this signals the intent to deprecate
   333  the v1 protocol.
   334  
   335  Support for the v1 protocol to the public registry was removed in 1.13. Any
   336  mirror configurations using v1 should be updated to use a
   337  [v2 registry mirror](https://docs.docker.com/registry/recipes/mirror/).
   338  
   339  Starting with Docker 17.12, support for V1 registries has been removed, and the
   340  `--disable-legacy-registry` flag can no longer be used, and `dockerd` will fail to
   341  start when set.
   342  
   343  
   344  ### Asynchronous `service create` and `service update` as default
   345  
   346  **Deprecated In Release: v17.05**
   347  
   348  **Disabled by default in release: [v17.10](https://github.com/docker/docker-ce/releases/tag/v17.10.0-ce)**
   349  
   350  Docker 17.05 added an optional `--detach=false` option to make the
   351  `docker service create` and `docker service update` work synchronously. This
   352  option will be enabled by default in Docker 17.10, at which point the `--detach`
   353  flag can be used to use the previous (asynchronous) behavior.
   354  
   355  The default for this option will also be changed accordingly for `docker service rollback`
   356  and `docker service scale` in Docker 17.10.
   357  
   358  ### `-g` and `--graph` flags on `dockerd`
   359  
   360  **Deprecated In Release: v17.05**
   361  
   362  The `-g` or `--graph` flag for the `dockerd` or `docker daemon` command was
   363  used to indicate the directory in which to store persistent data and resource
   364  configuration and has been replaced with the more descriptive `--data-root`
   365  flag.
   366  
   367  These flags were added before Docker 1.0, so will not be _removed_, only
   368  _hidden_, to discourage their use.
   369  
   370  ### Top-level network properties in NetworkSettings
   371  
   372  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   373  
   374  **Target For Removal In Release: v17.12**
   375  
   376  When inspecting a container, `NetworkSettings` contains top-level information
   377  about the default ("bridge") network;
   378  
   379  `EndpointID`, `Gateway`, `GlobalIPv6Address`, `GlobalIPv6PrefixLen`, `IPAddress`,
   380  `IPPrefixLen`, `IPv6Gateway`, and `MacAddress`.
   381  
   382  These properties are deprecated in favor of per-network properties in
   383  `NetworkSettings.Networks`. These properties were already "deprecated" in
   384  docker 1.9, but kept around for backward compatibility.
   385  
   386  Refer to [#17538](https://github.com/docker/docker/pull/17538) for further
   387  information.
   388  
   389  ### `filter` param for `/images/json` endpoint
   390  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   391  
   392  **Removed In Release: v20.10**
   393  
   394  The `filter` param to filter the list of image by reference (name or name:tag)
   395  is now implemented as a regular filter, named `reference`.
   396  
   397  ### `repository:shortid` image references
   398  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   399  
   400  **Removed In Release: v17.12**
   401  
   402  The `repository:shortid` syntax for referencing images is very little used,
   403  collides with tag references, and can be confused with digest references.
   404  
   405  Support for the `repository:shortid` notation to reference images was removed
   406  in Docker 17.12.
   407  
   408  ### `docker daemon` subcommand
   409  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   410  
   411  **Removed In Release: v17.12**
   412  
   413  The daemon is moved to a separate binary (`dockerd`), and should be used instead.
   414  
   415  ### Duplicate keys with conflicting values in engine labels
   416  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   417  
   418  **Removed In Release: v17.12**
   419  
   420  When setting duplicate keys with conflicting values, an error will be produced, and the daemon
   421  will fail to start.
   422  
   423  ### `MAINTAINER` in Dockerfile
   424  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   425  
   426  `MAINTAINER` was an early very limited form of `LABEL` which should be used instead.
   427  
   428  ### API calls without a version
   429  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   430  
   431  **Target For Removal In Release: v17.12**
   432  
   433  API versions should be supplied to all API calls to ensure compatibility with
   434  future Engine versions. Instead of just requesting, for example, the URL
   435  `/containers/json`, you must now request `/v1.25/containers/json`.
   436  
   437  ### Backing filesystem without `d_type` support for overlay/overlay2
   438  **Deprecated In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   439  
   440  **Removed In Release: v17.12**
   441  
   442  The overlay and overlay2 storage driver does not work as expected if the backing
   443  filesystem does not support `d_type`. For example, XFS does not support `d_type`
   444  if it is formatted with the `ftype=0` option.
   445  
   446  Starting with Docker 17.12, new installations will not support running overlay2 on
   447  a backing filesystem without `d_type` support. For existing installations that upgrade
   448  to 17.12, a warning will be printed.
   449  
   450  Please also refer to [#27358](https://github.com/docker/docker/issues/27358) for
   451  further information.
   452  
   453  
   454  ### `--automated` and `--stars` flags on `docker search`
   455  
   456  **Deprecated in Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   457  
   458  **Removed In Release: v20.10**
   459  
   460  The `docker search --automated` and `docker search --stars` options are deprecated.
   461  Use `docker search --filter=is-automated=<true|false>` and `docker search --filter=stars=...` instead.
   462  
   463  
   464  ### `-h` shorthand for `--help`
   465  
   466  **Deprecated In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   467  
   468  **Target For Removal In Release: v17.09**
   469  
   470  The shorthand (`-h`) is less common than `--help` on Linux and cannot be used
   471  on all subcommands (due to it conflicting with, e.g. `-h` / `--hostname` on
   472  `docker create`). For this reason, the `-h` shorthand was not printed in the
   473  "usage" output of subcommands, nor documented, and is now marked "deprecated".
   474  
   475  ### `-e` and `--email` flags on `docker login`
   476  **Deprecated In Release: [v1.11.0](https://github.com/docker/docker/releases/tag/v1.11.0)**
   477  
   478  **Removed In Release: [v17.06](https://github.com/docker/docker-ce/releases/tag/v17.06.0-ce)**
   479  
   480  The docker login command is removing the ability to automatically register for an account with the target registry if the given username doesn't exist. Due to this change, the email flag is no longer required, and will be deprecated.
   481  
   482  ### Separator (`:`) of `--security-opt` flag on `docker run`
   483  **Deprecated In Release: [v1.11.0](https://github.com/docker/docker/releases/tag/v1.11.0)**
   484  
   485  **Target For Removal In Release: v17.06**
   486  
   487  The flag `--security-opt` doesn't use the colon separator (`:`) anymore to divide keys and values, it uses the equal symbol (`=`) for consistency with other similar flags, like `--storage-opt`.
   488  
   489  ### Ambiguous event fields in API
   490  **Deprecated In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   491  
   492  The fields `ID`, `Status` and `From` in the events API have been deprecated in favor of a more rich structure.
   493  See the events API documentation for the new format.
   494  
   495  ### `-f` flag on `docker tag`
   496  **Deprecated In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   497  
   498  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   499  
   500  To make tagging consistent across the various `docker` commands, the `-f` flag on the `docker tag` command is deprecated. It is not longer necessary to specify `-f` to move a tag from one image to another. Nor will `docker` generate an error if the `-f` flag is missing and the specified tag is already in use.
   501  
   502  ### HostConfig at API container start
   503  **Deprecated In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   504  
   505  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   506  
   507  Passing an `HostConfig` to `POST /containers/{name}/start` is deprecated in favor of
   508  defining it at container creation (`POST /containers/create`).
   509  
   510  ### `--before` and `--since` flags on `docker ps`
   511  
   512  **Deprecated In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   513  
   514  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   515  
   516  The `docker ps --before` and `docker ps --since` options are deprecated.
   517  Use `docker ps --filter=before=...` and `docker ps --filter=since=...` instead.
   518  
   519  
   520  ### Driver-specific log tags
   521  **Deprecated In Release: [v1.9.0](https://github.com/docker/docker/releases/tag/v1.9.0)**
   522  
   523  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   524  
   525  Log tags are now generated in a standard way across different logging drivers.
   526  Because of which, the driver specific log tag options `syslog-tag`, `gelf-tag` and
   527  `fluentd-tag` have been deprecated in favor of the generic `tag` option.
   528  
   529  ```bash
   530  {% raw %}
   531  docker --log-driver=syslog --log-opt tag="{{.ImageName}}/{{.Name}}/{{.ID}}"
   532  {% endraw %}
   533  ```
   534  
   535  
   536  ### Docker Content Trust ENV passphrase variables name change
   537  **Deprecated In Release: [v1.9.0](https://github.com/docker/docker/releases/tag/v1.9.0)**
   538  
   539  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   540  
   541  Since 1.9, Docker Content Trust Offline key has been renamed to Root key and the Tagging key has been renamed to Repository key. Due to this renaming, we're also changing the corresponding environment variables
   542  
   543  - DOCKER_CONTENT_TRUST_OFFLINE_PASSPHRASE is now named DOCKER_CONTENT_TRUST_ROOT_PASSPHRASE
   544  - DOCKER_CONTENT_TRUST_TAGGING_PASSPHRASE is now named DOCKER_CONTENT_TRUST_REPOSITORY_PASSPHRASE
   545  
   546  
   547  ### `/containers/(id or name)/copy` endpoint
   548  
   549  **Deprecated In Release: [v1.8.0](https://github.com/docker/docker/releases/tag/v1.8.0)**
   550  
   551  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   552  
   553  The endpoint `/containers/(id or name)/copy` is deprecated in favor of `/containers/(id or name)/archive`.
   554  
   555  
   556  ### LXC built-in exec driver
   557  **Deprecated In Release: [v1.8.0](https://github.com/docker/docker/releases/tag/v1.8.0)**
   558  
   559  **Removed In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   560  
   561  The built-in LXC execution driver, the lxc-conf flag, and API fields have been removed.
   562  
   563  
   564  ### Old Command Line Options
   565  **Deprecated In Release: [v1.8.0](https://github.com/docker/docker/releases/tag/v1.8.0)**
   566  
   567  **Removed In Release: [v1.10.0](https://github.com/docker/docker/releases/tag/v1.10.0)**
   568  
   569  The flags `-d` and `--daemon` are deprecated in favor of the `daemon` subcommand:
   570  
   571      docker daemon -H ...
   572  
   573  The following single-dash (`-opt`) variant of certain command line options
   574  are deprecated and replaced with double-dash options (`--opt`):
   575  
   576      docker attach -nostdin
   577      docker attach -sig-proxy
   578      docker build -no-cache
   579      docker build -rm
   580      docker commit -author
   581      docker commit -run
   582      docker events -since
   583      docker history -notrunc
   584      docker images -notrunc
   585      docker inspect -format
   586      docker ps -beforeId
   587      docker ps -notrunc
   588      docker ps -sinceId
   589      docker rm -link
   590      docker run -cidfile
   591      docker run -dns
   592      docker run -entrypoint
   593      docker run -expose
   594      docker run -link
   595      docker run -lxc-conf
   596      docker run -n
   597      docker run -privileged
   598      docker run -volumes-from
   599      docker search -notrunc
   600      docker search -stars
   601      docker search -t
   602      docker search -trusted
   603      docker tag -force
   604  
   605  The following double-dash options are deprecated and have no replacement:
   606  
   607      docker run --cpuset
   608      docker run --networking
   609      docker ps --since-id
   610      docker ps --before-id
   611      docker search --trusted
   612  
   613  **Deprecated In Release: [v1.5.0](https://github.com/docker/docker/releases/tag/v1.5.0)**
   614  
   615  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   616  
   617  The single-dash (`-help`) was removed, in favor of the double-dash `--help`
   618  
   619      docker -help
   620      docker [COMMAND] -help
   621  
   622  
   623  ### `--api-enable-cors` flag on dockerd
   624  
   625  **Deprecated In Release: [v1.6.0](https://github.com/docker/docker/releases/tag/v1.6.0)**
   626  
   627  **Removed In Release: [v17.09](https://github.com/docker/docker-ce/releases/tag/v17.09.0-ce)**
   628  
   629  The flag `--api-enable-cors` is deprecated since v1.6.0. Use the flag
   630  `--api-cors-header` instead.
   631  
   632  ### `--run` flag on docker commit
   633  
   634  **Deprecated In Release: [v0.10.0](https://github.com/docker/docker/releases/tag/v0.10.0)**
   635  
   636  **Removed In Release: [v1.13.0](https://github.com/docker/docker/releases/tag/v1.13.0)**
   637  
   638  The flag `--run` of the docker commit (and its short version `-run`) were deprecated in favor
   639  of the `--changes` flag that allows to pass `Dockerfile` commands.
   640  
   641  
   642  ### Three arguments form in `docker import`
   643  **Deprecated In Release: [v0.6.7](https://github.com/docker/docker/releases/tag/v0.6.7)**
   644  
   645  **Removed In Release: [v1.12.0](https://github.com/docker/docker/releases/tag/v1.12.0)**
   646  
   647  The `docker import` command format `file|URL|- [REPOSITORY [TAG]]` is deprecated since November 2013. It's no more supported.