From 15e0f11c9a5d154637a861b9b8d85b34c64a8494 Mon Sep 17 00:00:00 2001 From: Andrew Hsu Date: Wed, 18 Jul 2018 18:02:56 +0000 Subject: [PATCH 1/4] update docker-ce install page with details about releases --- install/index.md | 156 +++++++++++++++++++++++++++++++++++++++++------ 1 file changed, 136 insertions(+), 20 deletions(-) diff --git a/install/index.md b/install/index.md index 97d64cb658..6e84aa6057 100644 --- a/install/index.md +++ b/install/index.md @@ -18,20 +18,130 @@ redirect_from: Docker Community Edition (CE) is ideal for developers and small teams looking to get started with Docker and experimenting with container-based -apps. Docker CE has two update channels, **stable** and **edge**: +apps. Docker CE has three types of update channels, **stable**, **test**, and **nightly**: -* **Stable** gives you reliable updates every quarter. -* **Edge** gives you new features every month. +* **Stable** gives you latest releases for general availability. +* **Test** gives pre-releases that are ready for testing before general availability. +* **Nightly** gives you latest builds of work in progress for the next major release. For more information about Docker CE, see [Docker Community Edition](https://www.docker.com/community-edition/){: target="_blank" class="_" }. -## Supported platforms +## Releases + +For the Docker CE engine, the open +repositories [Docker Engine](https://github.com/docker/engine) and +[Docker Client](https://github.com/docker/cli) apply. + +Releases of Docker Engine and Docker Client for general availability +are versioned using dotted triples. The components of this triple +are `YY.mm.` where the `YY.mm` component is refered to as the +year-month release. The version numbering format is chosen to illustrate +cadence and does not guarantee SemVer, but the desired date for general +availability. The version number may have additional information, such as +beta and release candidate qualifications. Such releases are considered +"pre-releases". + +The cadence of the year-month releases is every 6 months starting with +the `18.09` release. The patch releases for a year-month release take +place as needed to address bug fixes during it's support cycle. + +Docker CE binaries for a release are available on download.docker.com +as packages for the supported operating systems. Docker EE binaries are +available on the Docker Store for the supported operating systems. The +release channels are available for each of the year-month releases and +allow users to "pin" on a year-month release of choice. The release +channel also receives patch releases when they become available. + +### Nightly builds + +Nightly builds are created once per day from the master branch. Version +number for nightly builds take the format `0.YYYYmmdd.HHMMSS`, +for example `0.20181231.093045`. These builds allow for testing from the +latest code on master branch. No qualifications or guarantees are made +for the nightly builds. + +The release channel for these builds is called `nightly`. + +### Pre-releases + +In preparation for a new year-month release, a branch is created from +the master branch with format `YY.mm` when the milestones desired by +Docker for the release has achieved feature-complete. Pre-releases +such as betas and release candidates are conducted from their release +branch. Patch releases and the corresponding pre-releases are performed +from within the corresponding release branch. + +While pre-releases are done to assist in the stabilization process, no +guarantees are provided. + +Binaries built for pre-releases are available in the test channel for +the targetted year-month release using the naming format `test-YY.mm`, +for example `test-18.09`. + +### General availability + +Year-month releases are made from a release branch diverged from master +branch. The branch is created with format `.`, for example +`18.09`. The year-month name indicates the earliest possible calendar +month to expect the release to be generally available. All further patch +releases are performed from that branch. For example, once `v18.09.0` is +released, all subsequent patch releases are built from the `18.09` branch. + +Binaries built from this releases are available in the stable channel +`stable-YY.mm`, for example `stable-18.09`, as well as the corresponding +test channel. + +### Relationship between CE and EE code + +For a given year-month release, Docker releases both CE and EE +variants concurrently. EE is a superset of the code delivered in +CE. Docker maintains publicly visible repositories for the CE code, +as well as private repositories for the EE code. Automation (a bot) +is used to keep the branches between CE and EE in sync so as features +and fixes are merged on the various branches in the CE repositories +(upstream), the corresponding EE repositories and branches are kept +in sync (downstream). While Docker and our partners make every effort +to minimize merge conflicts between CE and EE, occasionally they will +happen and we'll work hard to resolve them in a timely fashion. + +## Next release + +The activity for upcoming year-month releases is tracked in the milestones +of the repository. + +## Support + +Docker CE releases of a year-month branch are supported with patches +as needed for 7 months after the first year-month general availability +release. Docker EE releases are supported for 24 months after the first +year-month general availability release. + +This means bug reports and backports to release branches are assessed +until the end of life date. + +After the year-month branch has reached end of life, the branch may be +deleted from the repository. + +### Reporting security issues + +The Docker maintainers take security seriously. If you discover a security +issue, please bring it to their attention right away! + +Please DO NOT file a public issue, instead send your report privately +to security@docker.com. + +Security reports are greatly appreciated and we will publicly thank you +for it. We also like to send gifts—if you're into schwag, make sure to +let us know. We currently do not offer a paid security bounty program, +but are not ruling it out in the future. + +### Supported platforms Docker CE is available on multiple platforms, on cloud and on-premises. Use the following tables to choose the best installation path for you. -### Desktop +#### Desktop {% assign green-check = '![yes](/install/images/green-check.svg){: style="height: 14px; margin: 0 auto"}' %} @@ -40,19 +150,16 @@ Use the following tables to choose the best installation path for you. | [Docker for Mac (macOS)](/docker-for-mac/install.md) | {{ green-check }} | | [Docker for Windows (Microsoft Windows 10)](/docker-for-windows/install.md) | {{ green-check }} | - -### Cloud +#### Cloud {% assign green-check = '![yes](/install/images/green-check.svg){: style="height: 14px; margin: 0 auto"}' %} - | Platform | Docker Community Edition | |:----------------------------------------|:------------------------:| | [Amazon Web Services](/docker-for-aws/) | {{ green-check }} | | [Microsoft Azure](/docker-for-azure/) | {{ green-check }} | - -### Server +#### Server {% assign green-check = '![yes](/install/images/green-check.svg){: style="height: 14px; margin: 0 auto"}' %} {% assign install-prefix-ce = '/install/linux/docker-ce' %} @@ -64,21 +171,30 @@ Use the following tables to choose the best installation path for you. | [Fedora]({{ install-prefix-ce }}/fedora.md) | [{{ green-check }}]({{ install-prefix-ce }}/fedora.md) | | | | | | [Ubuntu]({{ install-prefix-ce }}/ubuntu.md) | [{{ green-check }}]({{ install-prefix-ce }}/ubuntu.md) | [{{ green-check }}]({{ install-prefix-ce }}/ubuntu.md) | [{{ green-check }}]({{ install-prefix-ce }}/ubuntu.md) | [{{ green-check }}]({{ install-prefix-ce }}/ubuntu.md) | [{{ green-check }}]({{ install-prefix-ce }}/ubuntu.md) | +### Backporting -## Time-based release schedule +Backports to the Docker products are prioritized by the Docker company. A +Docker employee or repository maintainer will endeavour to ensure sensible +bugfixes make it into _active_ releases. -Starting with Docker 17.03, Docker uses a time-based release schedule. +If there are important fixes that ought to be considered for backport to +active release branches, be sure to highlight this in the PR description +or by adding a comment to the PR. -- Docker CE Edge releases generally happen monthly. -- Docker CE Stable releases generally happen quarterly, with patch releases as - needed. +### Upgrade path -### Updates, and patches +Patch releases are always backward compatible with its year-month version. -- A given Docker CE Stable release receives patches and updates for **one - month after the next Docker CE Stable release**. -- A given Docker CE Edge release does not receive any patches or updates after - a subsequent Docker CE Edge or Stable release. +## Not Covered + +As a general rule, anything not mentioned in this document may change in any release. + +## Exceptions + +Exceptions are made in the interest of __security patches__. If a break +in release procedure or product functionality is required, it will +be communicated clearly and the solution will be considered against +total impact. ## Get started From d166fe0431bb1a7571a0edf14a16c7fcc0c84be0 Mon Sep 17 00:00:00 2001 From: Andrew Hsu Date: Wed, 18 Jul 2018 18:19:38 +0000 Subject: [PATCH 2/4] removed cloud section from docker-ce install page Signed-off-by: Andrew Hsu --- install/index.md | 9 --------- 1 file changed, 9 deletions(-) diff --git a/install/index.md b/install/index.md index 6e84aa6057..54c7bc8482 100644 --- a/install/index.md +++ b/install/index.md @@ -150,15 +150,6 @@ Use the following tables to choose the best installation path for you. | [Docker for Mac (macOS)](/docker-for-mac/install.md) | {{ green-check }} | | [Docker for Windows (Microsoft Windows 10)](/docker-for-windows/install.md) | {{ green-check }} | -#### Cloud - -{% assign green-check = '![yes](/install/images/green-check.svg){: style="height: 14px; margin: 0 auto"}' %} - -| Platform | Docker Community Edition | -|:----------------------------------------|:------------------------:| -| [Amazon Web Services](/docker-for-aws/) | {{ green-check }} | -| [Microsoft Azure](/docker-for-azure/) | {{ green-check }} | - #### Server {% assign green-check = '![yes](/install/images/green-check.svg){: style="height: 14px; margin: 0 auto"}' %} From 5d51957105a1ac87bd8d5078c1b1a642e8c2c008 Mon Sep 17 00:00:00 2001 From: Andrew Hsu Date: Wed, 18 Jul 2018 18:31:56 +0000 Subject: [PATCH 3/4] update intro paragraph about docker-ce supported platforms Signed-off-by: Andrew Hsu --- install/index.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/install/index.md b/install/index.md index 54c7bc8482..df6d586f3c 100644 --- a/install/index.md +++ b/install/index.md @@ -138,8 +138,8 @@ but are not ruling it out in the future. ### Supported platforms -Docker CE is available on multiple platforms, on cloud and on-premises. -Use the following tables to choose the best installation path for you. +Docker CE is available on multiple platforms. Use the following tables +to choose the best installation path for you. #### Desktop From 45542d70269faab6cc070f7382671667a51c8d34 Mon Sep 17 00:00:00 2001 From: Tammy Fox Date: Wed, 18 Jul 2018 19:22:42 -0400 Subject: [PATCH 4/4] editorial review --- install/index.md | 46 +++++++++++++++++++++++----------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/install/index.md b/install/index.md index df6d586f3c..1aeb86c67a 100644 --- a/install/index.md +++ b/install/index.md @@ -35,7 +35,7 @@ repositories [Docker Engine](https://github.com/docker/engine) and Releases of Docker Engine and Docker Client for general availability are versioned using dotted triples. The components of this triple -are `YY.mm.` where the `YY.mm` component is refered to as the +are `YY.mm.` where the `YY.mm` component is referred to as the year-month release. The version numbering format is chosen to illustrate cadence and does not guarantee SemVer, but the desired date for general availability. The version number may have additional information, such as @@ -44,21 +44,21 @@ beta and release candidate qualifications. Such releases are considered The cadence of the year-month releases is every 6 months starting with the `18.09` release. The patch releases for a year-month release take -place as needed to address bug fixes during it's support cycle. +place as needed to address bug fixes during its support cycle. -Docker CE binaries for a release are available on download.docker.com +Docker CE binaries for a release are available on as packages for the supported operating systems. Docker EE binaries are -available on the Docker Store for the supported operating systems. The +available on the [Docker Store](https://store.docker.com/) for the supported operating systems. The release channels are available for each of the year-month releases and allow users to "pin" on a year-month release of choice. The release channel also receives patch releases when they become available. ### Nightly builds -Nightly builds are created once per day from the master branch. Version +Nightly builds are created once per day from the master branch. The version number for nightly builds take the format `0.YYYYmmdd.HHMMSS`, for example `0.20181231.093045`. These builds allow for testing from the -latest code on master branch. No qualifications or guarantees are made +latest code on the master branch. No qualifications or guarantees are made for the nightly builds. The release channel for these builds is called `nightly`. @@ -67,21 +67,21 @@ The release channel for these builds is called `nightly`. In preparation for a new year-month release, a branch is created from the master branch with format `YY.mm` when the milestones desired by -Docker for the release has achieved feature-complete. Pre-releases -such as betas and release candidates are conducted from their release -branch. Patch releases and the corresponding pre-releases are performed +Docker for the release have achieved feature-complete. Pre-releases +such as betas and release candidates are conducted from their respective release +branches. Patch releases and the corresponding pre-releases are performed from within the corresponding release branch. While pre-releases are done to assist in the stabilization process, no guarantees are provided. Binaries built for pre-releases are available in the test channel for -the targetted year-month release using the naming format `test-YY.mm`, +the targeted year-month release using the naming format `test-YY.mm`, for example `test-18.09`. ### General availability -Year-month releases are made from a release branch diverged from master +Year-month releases are made from a release branch diverged from the master branch. The branch is created with format `.`, for example `18.09`. The year-month name indicates the earliest possible calendar month to expect the release to be generally available. All further patch @@ -96,14 +96,14 @@ test channel. For a given year-month release, Docker releases both CE and EE variants concurrently. EE is a superset of the code delivered in -CE. Docker maintains publicly visible repositories for the CE code, +CE. Docker maintains publicly visible repositories for the CE code as well as private repositories for the EE code. Automation (a bot) is used to keep the branches between CE and EE in sync so as features and fixes are merged on the various branches in the CE repositories (upstream), the corresponding EE repositories and branches are kept -in sync (downstream). While Docker and our partners make every effort +in sync (downstream). While Docker and its partners make every effort to minimize merge conflicts between CE and EE, occasionally they will -happen and we'll work hard to resolve them in a timely fashion. +happen, and Docker will work hard to resolve them in a timely fashion. ## Next release @@ -118,9 +118,9 @@ release. Docker EE releases are supported for 24 months after the first year-month general availability release. This means bug reports and backports to release branches are assessed -until the end of life date. +until the end-of-life date. -After the year-month branch has reached end of life, the branch may be +After the year-month branch has reached end-of-life, the branch may be deleted from the repository. ### Reporting security issues @@ -128,12 +128,12 @@ deleted from the repository. The Docker maintainers take security seriously. If you discover a security issue, please bring it to their attention right away! -Please DO NOT file a public issue, instead send your report privately +Please DO NOT file a public issue; instead send your report privately to security@docker.com. -Security reports are greatly appreciated and we will publicly thank you -for it. We also like to send gifts—if you're into schwag, make sure to -let us know. We currently do not offer a paid security bounty program, +Security reports are greatly appreciated, and Docker will publicly thank you +for it. Docker also likes to send gifts — if you're into swag, make sure to +let us know. Docker currently does not offer a paid security bounty program but are not ruling it out in the future. ### Supported platforms @@ -176,7 +176,7 @@ or by adding a comment to the PR. Patch releases are always backward compatible with its year-month version. -## Not Covered +## Not covered As a general rule, anything not mentioned in this document may change in any release. @@ -184,10 +184,10 @@ As a general rule, anything not mentioned in this document may change in any rel Exceptions are made in the interest of __security patches__. If a break in release procedure or product functionality is required, it will -be communicated clearly and the solution will be considered against +be communicated clearly, and the solution will be considered against total impact. ## Get started -After setting up Docker, you can learn the basics over at +After setting up Docker, you can learn the basics with [Getting started with Docker](/get-started/).