Merge branch 'master' into newsite-tabs

This commit is contained in:
John Mulhausen 2017-03-02 05:59:49 -08:00 committed by GitHub
commit 4bf56a42dc
109 changed files with 1413 additions and 1170 deletions

View File

@ -15,7 +15,7 @@ COPY . md_source
# then nuke the md_source directory.
## Branch to pull from, per ref doc
ENV ENGINE_BRANCH="1.13.x"
ENV ENGINE_BRANCH="17.03.x"
ENV DISTRIBUTION_BRANCH="release/2.5"
RUN svn co https://github.com/docker/docker/branches/$ENGINE_BRANCH/docs/extend md_source/engine/extend \

View File

@ -16,15 +16,15 @@ overrides:
- path: /engine/deprecated.md
description: Docker Engine deprecation reference
source: https://github.com/docker/docker/tree/1.13.x/docs/deprecated.md
source: https://github.com/docker/docker/tree/17.03.x/docs/deprecated.md
- path: /engine/extend/
description: References for Docker Engine plugin system
source: https://github.com/docker/docker/tree/1.13.x/docs/extend/
source: https://github.com/docker/docker/tree/17.03.x/docs/extend/
- path: /engine/reference/
description: Docker Engine CLI and API references
source: https://github.com/docker/docker/tree/1.13.x/docs/reference/
source: https://github.com/docker/docker/tree/17.03.x/docs/reference/
- path: /notary/reference/
description: Reference docs for Docker Notary

View File

@ -19,7 +19,7 @@ guides:
- sectiontitle: Get Docker
section:
- path: /engine/installation/
title: Install Docker Engine
title: Install Docker
- path: /docker-for-mac/install/
title: Docker for Mac
- path: /docker-for-windows/install/
@ -35,11 +35,11 @@ guides:
- path: /engine/installation/linux/fedora/
title: Fedora
- path: /engine/installation/linux/debian/
title: Debian or Raspbian
title: Debian
- path: /engine/installation/linux/oracle/
title: Oracle Linux
- path: /engine/installation/linux/suse/
title: OpenSuSE and SuSE Linux Enterprise
title: SuSE Linux Enterprise
- path: /engine/installation/linux/other/
title: Other Linux distributions
- path: /engine/installation/binaries/
@ -869,6 +869,13 @@ samples:
title: WordPress
manuals:
- sectiontitle: Docker Enterprise Edition
section:
- path: /enterprise/
title: About Docker EE
- path: /engine/installation/
title: Install Docker EE
nosync: true
- sectiontitle: Commercially Supported Docker Engine
section:
- sectiontitle: 1.13

View File

@ -1,25 +1,32 @@
{% capture aws_button_latest %}
<a href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/stable/Docker.tmpl" data-rel="Stable-2" target="blank" class="aws-deploy">![Docker for AWS](https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png)</a>
{% endcapture %}
{% assign d4a_stable = "CE-Stable-1" %}
{% assign d4a_edge = "CE-Edge-1" %}
{% assign edition_version = "17.03.0-ce" %}
{% capture aws_blue_latest %}
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/stable/Docker.tmpl" data-rel="Stable-2" target="blank">Deploy Docker for AWS (stable)</a>
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/stable/Docker.tmpl" data-rel="{{ d4a_stable }}" target="blank">Deploy Docker Community Edition (CE) for AWS (stable)</a>
{% endcapture %}
{% capture aws_blue_edge %}
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/edge/Docker.tmpl" data-rel="Beta-18" target="blank">Deploy Docker for AWS (beta)</a>
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/edge/Docker.tmpl" data-rel="{{ d4a_edge }}" target="blank">Deploy Docker Community Edition (CE) for AWS (edge)</a>
{% endcapture %}
{% capture aws_blue_vpc_latest %}
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/stable/Docker-no-vpc.tmpl" data-rel="Stable-1" target="blank">Deploy Docker for AWS (stable)<br/><small>uses your existing VPC</small></a>
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/stable/Docker-no-vpc.tmpl" data-rel="{{ d4a_stable }}" target="blank">Deploy Docker Community Edition (CE) for AWS (stable)<br/><small>uses your existing VPC</small></a>
{% endcapture %}
{% capture aws_blue_vpc_edge %}
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/edge/Docker-no-vpc.tmpl" data-rel="Beta-18" target="blank">Deploy Docker for AWS (beta)<br/><small>uses your existing VPC</small></a>
<a class="button darkblue-btn aws-deploy" href="https://console.aws.amazon.com/cloudformation/home#/stacks/new?stackName=Docker&templateURL=https://editions-us-east-1.s3.amazonaws.com/aws/edge/Docker-no-vpc.tmpl" data-rel="{{ d4a_edge }}" target="blank">Deploy Docker Community Edition (CE) for AWS (edge)<br/><small>uses your existing VPC</small></a>
{% endcapture %}
{% capture azure_blue_latest %}
<a class="button darkblue-btn azure-deploy" href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdownload.docker.com%2Fazure%2Fstable%2FDocker.tmpl" data-rel="Stable-2" target="blank">Deploy Docker for Azure (stable)</a>
<a class="button darkblue-btn azure-deploy" href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdownload.docker.com%2Fazure%2Fstable%2FDocker.tmpl" data-rel="{{ d4a_stable }}" target="blank">Deploy Docker Community Edition (CE) for Azure (stable)</a>
{% endcapture %}
{% capture azure_blue_edge %}
<a class="button darkblue-btn azure-deploy" href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdownload.docker.com%2Fazure%2Fedge%2FDocker.tmpl" data-rel="Beta-18" target="blank">Deploy Docker for Azure (beta)</a>
<a class="button darkblue-btn azure-deploy" href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdownload.docker.com%2Fazure%2Fedge%2FDocker.tmpl" data-rel="{{ d4a_edge }}" target="blank">Deploy Docker Community Edition (CE) for Azure (edge)</a>
{% endcapture %}
{% capture azure_button_latest %}
<a href="https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fdownload.docker.com%2Fazure%2Fstable%2FDocker.tmpl" data-rel="Stable-2" target="_blank" class="azure-deploy">![Docker for Azure](http://azuredeploy.net/deploybutton.png)</a>
{% endcapture %}

View File

@ -0,0 +1,17 @@
{% capture green-check %}![yes](/engine/installation/images/green-check.svg){: style="height: 14px"}{% endcapture %}
| Platform | Docker EE | Docker CE |
|:-------------------------------------------------------------------------------------|:-----------------:|:-----------------:|
| [Ubuntu](linux/ubuntulinux.md) | {{ green-check }} | {{ green-check }} |
| [Debian](linux/debian.md) | | {{ green-check }} |
| [Red Hat Enterprise Linux](linux/rhel.md) | {{ green-check }} | |
| [CentOS](linux/centos.md) | {{ green-check }} | {{ green-check }} |
| [Fedora](linux/fedora.md) | | {{ green-check }} |
| [Oracle Linux](linux/oracle.md) | {{ green-check }} | |
| [SUSE Linux Enterprise Server](linux/suse.md) | {{ green-check }} | |
| [Microsoft Windows Server 2016](https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-server){: target="_blank" class="_" } | {{ green-check }} | |
| [Microsoft Windows 10](/docker-for-windows/)) | | {{ green-check }} |
| [macOS](/docker-for-mac/) | | {{ green-check }} |
| [Microsoft Azure](/docker-cloud/infrastructure/link-aws.md) | {{ green-check }} | {{ green-check }} |
| [Amazon Web Services](/docker-cloud/infrastructure/link-aws.md) | {{ green-check }} | {{ green-check }} |
{: style="width: 75%" }

View File

@ -5,23 +5,33 @@ keywords: documentation, docs, docker, compose, bundles, stacks
title: Docker stacks and distributed application bundles (experimental)
---
> **Note**: This is a copy of the [Docker Stacks and Distributed Application
> **Note**: This is a modified copy of the [Docker Stacks and Distributed Application
> Bundles](https://github.com/docker/docker/blob/v1.12.0-rc4/experimental/docker-stacks-and-bundles.md)
> document in the [docker/docker repo](https://github.com/docker/docker).
> document in the [docker/docker repo](https://github.com/docker/docker). It's been updated to accurately reflect newer releases.
## Overview
Docker Stacks and Distributed Application Bundles are 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.
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
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.
As of Docker 1.12 and Compose 1.8, the features are experimental. Neither
Docker Engine nor the Docker Registry support distribution of bundles.
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).
If you are just getting started with Docker and want to learn the best way to
deploy multi-service applications, a good place to start is the [Sample app
tutorial](/engine/getstarted-voting-app/index.md). This shows you how to define
a service configuration in a `docker-stack.yml` file, deploy the app, and use
the relevant tools and commands.
## Producing a bundle
@ -200,3 +210,11 @@ A service has the following fields:
> **Note:** Some configuration options are not yet supported in the DAB format,
> including volume mounts.
## Related topics
* [Sample app tutorial](/engine/getstarted-voting-app/index.md)
* [docker stack deploy](/engine/reference/commandline/stack_deploy/) command
* [deploy](/compose/compose-file/index.md#deploy) option in [Compose files](/compose/compose-file/index.md)

View File

@ -475,7 +475,7 @@ is specified, then read-write will be used.
- service_name
- service_name:ro
### cpu\_shares, cpu\_quota, cpuset, domainname, hostname, ipc, mac\_address, mem\_limit, memswap\_limit, privileged, read\_only, restart, shm\_size, stdin\_open, tty, user, working\_dir
### cpu\_shares, cpu\_quota, cpuset, domainname, hostname, ipc, mac\_address, mem\_limit, memswap\_limit, mem\_swappiness, privileged, read\_only, restart, shm\_size, stdin\_open, tty, user, working\_dir
Each of these is a single value, analogous to its
[docker run](/engine/reference/run.md) counterpart.

View File

@ -883,7 +883,7 @@ then read-write will be used.
> - container_name
> - container_name:rw
### cpu\_shares, cpu\_quota, cpuset, domainname, hostname, ipc, mac\_address, mem\_limit, memswap\_limit, oom_score_adj, privileged, read\_only, restart, shm\_size, stdin\_open, tty, user, working\_dir
### cpu\_shares, cpu\_quota, cpuset, domainname, hostname, ipc, mac\_address, mem\_limit, memswap\_limit, mem\_swappiness, oom_score_adj, privileged, read\_only, restart, shm\_size, stdin\_open, tty, user, working\_dir
Each of these is a single value, analogous to its
[docker run](/engine/reference/run.md) counterpart.

View File

@ -247,7 +247,7 @@ updates.
Configures resource constraints. This replaces the older resource constraint
options in Compose files prior to version 3 (`cpu_shares`, `cpu_quota`,
`cpuset`, `mem_limit`, `memswap_limit`).
`cpuset`, `mem_limit`, `memswap_limit`, `mem_swappiness`).
Each of these is a single value, analogous to its
[docker run](/engine/reference/run.md) counterpart.

View File

@ -27,24 +27,24 @@ Runs a one-time command against a service. For example, the following command st
docker-compose run web bash
Commands you use with `run` start in new containers with the same configuration as defined by the service' configuration. This means the container has the same volumes, links, as defined in the configuration file. There are two differences though.
Commands you use with `run` start in new containers with configuration defined by that of the service, including volumes, links, and other details. However, there are two important differences.
First, the command passed by `run` overrides the command defined in the service configuration. For example, if the `web` service configuration is started with `bash`, then `docker-compose run web python app.py` overrides it with `python app.py`.
The second difference is the `docker-compose run` command does not create any of the ports specified in the service configuration. This prevents the port collisions with already open ports. If you *do want* the service's ports created and mapped to the host, specify the `--service-ports` flag:
The second difference is that the `docker-compose run` command does not create any of the ports specified in the service configuration. This prevents port collisions with already-open ports. If you *do want* the service's ports to be created and mapped to the host, specify the `--service-ports` flag:
docker-compose run --service-ports web python manage.py shell
Alternatively manual port mapping can be specified. Same as when running Docker's `run` command - using `--publish` or `-p` options:
Alternatively, manual port mapping can be specified with the `--publish` or `-p` options, just as when using `docker run`:
docker-compose run --publish 8080:80 -p 2022:22 -p 127.0.0.1:2021:21 web python manage.py shell
If you start a service configured with links, the `run` command first checks to see if the linked service is running and starts the service if it is stopped. Once all the linked services are running, the `run` executes the command you passed it. So, for example, you could run:
If you start a service configured with links, the `run` command first checks to see if the linked service is running and starts the service if it is stopped. Once all the linked services are running, the `run` executes the command you passed it. For example, you could run:
docker-compose run db psql -h db -U docker
This would open up an interactive PostgreSQL shell for the linked `db` container.
This will open an interactive PostgreSQL shell for the linked `db` container.
If you do not want the `run` command to start linked containers, specify the `--no-deps` flag:
If you do not want the `run` command to start linked containers, use the `--no-deps` flag:
docker-compose run --no-deps web python manage.py shell

View File

@ -45,6 +45,11 @@ to update its RHEL kernel.
$ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
```
> **Note**: If the key server above does not respond, you can try one of these:
>
> - pgp.mit.edu
> - keyserver.ubuntu.com
2. Install yum-utils if necessary:
```bash
@ -148,6 +153,10 @@ to update its RHEL kernel.
$ curl -fsSL 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add -
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Add the repository. In the command below, the `lsb_release -cs` sub-command
returns the name of your Ubuntu version, like `xenial` or `trusty`.
@ -224,6 +233,10 @@ to update its RHEL kernel.
This adds the repository of the latest version of CS Docker Engine. You can
customize the URL to install an older version.
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install CS Docker Engine.
- **Latest version**:

View File

@ -22,6 +22,12 @@ cannot be adopted as quickly for consistency and compatibility reasons.
These notes refer to the current and immediately prior releases of the
CS Engine. For notes on older versions, see the [CS Engine prior release notes archive](prior-release-notes.md).
## CS Engine 1.12.6-cs9
(28 Feb 2017)
* Fixes an issue causing containerd to deadlock [#336](github.com/docker/containerd/pull/336)
* Fixes an issue where encrypted overlay networks stop working [#30727](github.com/docker/docker/issues/30727)
## CS Engine 1.12.6-cs8
(8 Feb 2017)

View File

@ -180,6 +180,10 @@ Use these instructions to upgrade YUM-based systems.
$ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install yum-utils if necessary:
```bash
@ -225,6 +229,10 @@ Use these instructions to update APT-based systems.
$ curl -s 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add --import
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install the HTTPS helper for apt (your system may already have it):
```bash

View File

@ -48,6 +48,10 @@ to update its RHEL kernel.
$ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
2. Install yum-utils if necessary:
```bash
@ -151,6 +155,10 @@ to update its RHEL kernel.
$ curl -fsSL 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add -
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Add the repository. In the command below, the `lsb_release -cs` sub-command
returns the name of your Ubuntu version, like `xenial` or `trusty`.
@ -227,6 +235,10 @@ to update its RHEL kernel.
This adds the repository of the latest version of CS Docker Engine. You can
customize the URL to install an older version.
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install CS Docker Engine.
- **Latest version**:

View File

@ -175,6 +175,10 @@ Use these instructions to upgrade YUM-based systems.
$ sudo rpm --import "https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e"
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install yum-utils if necessary:
```bash
@ -220,6 +224,10 @@ Use these instructions to update APT-based systems.
$ curl -s 'https://sks-keyservers.net/pks/lookup?op=get&search=0xee6d536cf7dc86e2d7d56f59a178ac6c6238f52e' | sudo apt-key add --import
```
Note: if the key server above does not respond, you can try one of these:
- pgp.mit.edu
- keyserver.ubuntu.com
3. Install the HTTPS helper for apt (your system may already have it):
```bash

View File

@ -4,8 +4,7 @@ description: Learn how to deploy Docker Datacenter with one click, using an Amaz
keywords: docker, datacenter, install, orchestration, management
---
{% assign launch_url = "https://console.aws.amazon.com/cloudformation/home?#/stacks/new?templateURL=" %}
{% assign template_url = "https://s3.amazonaws.com/packages.docker.com/caas/docker/docker_for_aws_ddc_2.1.0.json" %}
{% assign launch_url = "https://aws.amazon.com/marketplace/pp/B06XCFDF9K" %}
Docker Datacenter on Docker for Amazon AWS is an one-click deployment of DDC on
AWS. It deploys multiple nodes with Docker CS Engine, and then installs
@ -119,15 +118,14 @@ Manager ephemeral storage volume type ("standard", "gp2")
## Installation
There are two ways you can deploy Docker Datacenter on Docker for AWS. You can
use the AWS Management Console (browser based), or the AWS CLI. Both have the
above configuration options.
To deploy Docker Datacenter on Docker for AWS, you will
use the AWS Management Console (browser based), using the above configuration options.
**1) AWS Management Console**
**AWS Management Console**
- Click on **Launch Stack** below. This link will take you to AWS cloudformation portal.
[![Docker Datacenter on Docker for AWS](https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png)]({{ launch_url }}{{ template_url }}){: .with-border}
[![Docker Datacenter on Docker for AWS](https://s3.amazonaws.com/cloudformation-examples/cloudformation-launch-stack.png)]({{ launch_url }}){: .with-border}
- Confirm your AWS Region that you'd like to launch this stack in (top right corner)
- Provide the required parameters and click **Next** (see below)
@ -135,48 +133,6 @@ above configuration options.
- **Confirm** and **Launch**
- Once the stack is successfully created (it does take between 10-15 mins), click on **Output** tab to see the URLs of UCP and DTR.
**2) AWS CLI**
- Upload your Docker Datacenter license to an S3 bucket.
- Run the following Docker container that uses `aws-cli` to launch the
Cloudformation stack. Alternatively, if you have `aws-cli` installed you can
run the command directly using it.
```
docker run --env AWS_ACCESS_KEY_ID=<AWS_ACCESS_KEY_ID> \
--env AWS_SECRET_ACCESS_KEY=<AWS_SECRET_ACCESS_KEY> \
--env AWS_DEFAULT_REGION=<AWS_REGION> \
garland/aws-cli-docker aws cloudformation create-stack \
--stack-name <STACK_NAME> \
--capabilities CAPABILITY_IAM \
--parameters \
ParameterKey=KeyName,ParameterValue=<SSH_KEY_NAME> \
ParameterKey=InstanceType,ParameterValue=<INSTANCE_TYPE> \
ParameterKey=ManagerInstanceType,ParameterValue=<INSTANCE_TYPE> \
ParameterKey=ClusterSize,ParameterValue=<CLUSTER_SIZE> \
ParameterKey=ManagerSize,ParameterValue=<MANAGER_SIZE> \
ParameterKey=DDCUsernameSet,ParameterValue=<DDC_USERNAME> \
ParameterKey=DDCPasswordSet,ParameterValue=<DDC_PASSWORD> \
ParameterKey=EnableSystemPrune,ParameterValue=<YES OR NO> \
ParameterKey=ManagerDiskSize,ParameterValue=<MANAGERS_DISK_SIZE> \
ParameterKey=ManagerDiskType,ParameterValue=<MANAGERS_DISK_TYPE> \
ParameterKey=WorkerDiskSize,ParameterValue=<WORKERS_DISK_SIZE> \
ParameterKey=WorkerDiskType,ParameterValue=<WORKERS_DISK_TYPE> \
ParameterKey=License,ParameterValue=<YOUR_DDC_LICENSE_S3_URL> \
--template-url "{{ template_url }}"
```
- Once successfully created ( it does take between 10-15 mins), you can get
stack outputs such as UCP and DTR URLs directly from CLI as follows:
```
docker run --env AWS_ACCESS_KEY_ID=<AWS_ACCESS_KEY_ID> \
--env AWS_SECRET_ACCESS_KEY=<AWS_SECRET_ACCESS_KEY> \
--env AWS_DEFAULT_REGION=<AWS_REGION> \
garland/aws-cli-docker aws cloudformation describe-stacks --stack-name <STACK_NAME>
```
- To fully automate installs, you can use the [AWS Cloudformation API](http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html)

View File

@ -5,7 +5,7 @@ title: Docker for AWS Frequently asked questions (FAQ)
toc_max: 2
---
## Stable and beta channels
## Stable and edge channels
Two different download channels are available for Docker for AWS:
@ -15,13 +15,13 @@ Two different download channels are available for Docker for AWS:
schedule is synched with Docker Engine releases and hotfixes. On the stable
channel, you can select whether to send usage statistics and other data.
* The **beta channel** provides a deployment with new features we are working on,
* The **edge channel** provides a deployment with new features we are working on,
but is not necessarily fully tested. It comes with the experimental version of
Docker Engine. Bugs, crashes and issues are more likely to occur with the beta
Docker Engine. Bugs, crashes and issues are more likely to occur with the edge
cluster, but you get a chance to preview new functionality, experiment, and provide
feedback as the deployment evolve. Releases are typically more frequent than for
stable, often one or more per month. Usage statistics and crash reports are sent
by default. You do not have the option to disable this on the beta channel.
by default. You do not have the option to disable this on the edge channel.
## Can I use my own AMI?

View File

@ -9,24 +9,30 @@ redirect_from:
{% include d4a_buttons.md %}
## Quickstart
## Docker Enterprise Edition (EE) for AWS
This deployment is fully baked and tested, and comes with the latest Enterprise Edition version of Docker. <br/>This release is maintained and receives <strong>security and critical bugfixes for one year</strong>.
<a class="button darkblue-btn" href="https://store.docker.com/editions/enterprise/docker-ee-aws?tab=description" target="_blank">Deploy Docker Enterprise Edition (EE) for AWS</a>
## Docker Community Edition (CE) for AWS
### Quickstart
If your account [has the proper
permissions](/docker-for-aws/iam-permissions.md), you can
use the blue button from the stable or beta channel to bootstrap Docker for AWS
using CloudFormation. For more about stable and beta channels, see the
[FAQs](/docker-for-aws/faqs.md#stable-and-beta-channels).
use the blue button from the stable or edge channel to bootstrap Docker for AWS
using CloudFormation. For more about stable and edge channels, see the
[FAQs](/docker-for-aws/faqs.md#stable-and-edge-channels).
<table style="width:100%">
<tr>
<th style="font-size: x-large; font-family: arial">Stable channel</th>
<th style="font-size: x-large; font-family: arial">Beta channel</th>
<th style="font-size: x-large; font-family: arial">Edge channel</th>
</tr>
<tr valign="top">
<td width="50%">This deployment is fully baked and tested, and comes with the latest GA version of Docker Engine. <br><br>This is the best channel to use if you want a reliable platform to work with. <br><br>These releases follow a version schedule with a longer lead time than the betas, synched with Docker Engine releases and hotfixes.
</td>
<td width="50%">This deployment offers cutting edge features and comes with the experimental version of Docker Engine, described in the <a href="https://github.com/docker/docker/tree/master/experimental">Docker Experimental Features README</a> on GitHub.<br><br>This is the best channel to use if you want to experiment with features under development, and can weather some instability and bugs. This channel is a continuation of the beta program, where you can provide feedback as the apps evolve. Releases are typically more frequent than for stable, often one or more per month. <br><br>We collect usage data on betas across the board.</td>
<td width="50%">This deployment is fully baked and tested, and comes with the latest CE version of Docker. <br><br>This is the best channel to use if you want a reliable platform to work with. <br><br>Stable is released quarterly and is for users that want an easier-to-maintain release pace.</td>
<td width="50%">This deployment offers cutting edge features of the CE version of Docker and comes with experimental features turned on, described in the <a href="https://github.com/docker/docker/tree/master/experimental">Docker Experimental Features README</a> on GitHub.<br><br>This is the best channel to use if you want to experiment with features under development, and can weather some instability and bugs. Edge is for users wanting a drop of the latest and greatest features every month <br><br>We collect usage data on edges across the board.</td>
</tr>
<tr valign="top">
<td width="50%">
@ -45,7 +51,7 @@ using CloudFormation. For more about stable and beta channels, see the
</tr>
</table>
## Deployment options
### Deployment options
There are two ways to deploy Docker for AWS:
@ -54,12 +60,12 @@ There are two ways to deploy Docker for AWS:
We recommend allowing Docker for AWS to create the VPC since it allows Docker to optimize the environment. Installing in an existing VPC requires more work.
### Create a new VPC
#### Create a new VPC
This approach creates a new VPC, subnets, gateways and everything else needed in order to run Docker for AWS. It is the easiest way to get started, and requires the least amount of work.
All you need to do is run the CloudFormation template, answer some questions, and you are good to go.
### Install with an Existing VPC
#### Install with an Existing VPC
If you need to install Docker for AWS with an existing VPC, you need to do a few preliminary steps. See [recommended VPC and Subnet setup](faqs.md#recommended-vpc-and-subnet-setup) for more details.
1. Pick a VPC in a region you want to use.
@ -70,7 +76,7 @@ If you need to install Docker for AWS with an existing VPC, you need to do a few
4. When you launch the docker for AWS CloudFormation stack, make sure you use the one for existing VPCs. This template will prompt you for the VPC and subnets that you want to use for Docker for AWS.
## Prerequisites
### Prerequisites
- Access to an AWS account with permissions to use CloudFormation and creating the following objects. [Full set of required permissions](iam-permissions.md).
- EC2 instances + Auto Scaling groups
@ -85,30 +91,30 @@ If you need to install Docker for AWS with an existing VPC, you need to do a few
For more information about adding an SSH key pair to your account, please refer to the [Amazon EC2 Key Pairs docs](http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-key-pairs.html)
## Configuration
### Configuration
Docker for AWS is installed with a CloudFormation template that configures Docker in swarm-mode, running on instances backed custom AMIs. There are two ways you can deploy Docker for AWS. You can use the AWS Management Console (browser based), or use the AWS CLI. Both have the following configuration options.
### Configuration options
#### Configuration options
#### KeyName
##### KeyName
Pick the SSH key that will be used when you SSH into the manager nodes.
#### InstanceType
##### InstanceType
The EC2 instance type for your worker nodes.
#### ManagerInstanceType
##### ManagerInstanceType
The EC2 instance type for your manager nodes. The larger your swarm, the larger the instance size you should use.
#### ClusterSize
##### ClusterSize
The number of workers you want in your swarm (0-1000).
#### ManagerSize
##### ManagerSize
The number of Managers in your swarm. You can pick either 1, 3 or 5 managers. We only recommend 1 manager for testing and dev setups. There are no failover guarantees with 1 manager — if the single manager fails the swarm will go down as well. Additionally, upgrading single-manager swarms is not currently guaranteed to succeed.
We recommend at least 3 managers, and if you have a lot of workers, you should pick 5 managers.
#### EnableSystemPrune
##### EnableSystemPrune
Enable if you want Docker for AWS to automatically cleanup unused space on your swarm nodes.
@ -120,38 +126,38 @@ Pruning removes the following:
- All dangling images
- All unused networks
#### EnableCloudWatchLogs
##### EnableCloudWatchLogs
Enable if you want Docker to send your container logs to CloudWatch. ("yes", "no") Defaults to yes.
#### WorkerDiskSize
##### WorkerDiskSize
Size of Workers's ephemeral storage volume in GiB (20 - 1024).
#### WorkerDiskType
##### WorkerDiskType
Worker ephemeral storage volume type ("standard", "gp2").
#### ManagerDiskSize
##### ManagerDiskSize
Size of Manager's ephemeral storage volume in GiB (20 - 1024)
#### ManagerDiskType
##### ManagerDiskType
Manager ephemeral storage volume type ("standard", "gp2")
### Installing with the AWS Management Console
#### Installing with the AWS Management Console
The simplest way to use the template is with the CloudFormation section of the AWS Management Console.
Go to the [Release Notes](release-notes.md) page, and click on the "launch stack" button to start the deployment process.
### Installing with the CLI
#### Installing with the CLI
You can also invoke the Docker for AWS CloudFormation template from the AWS CLI:
Here is an example of how to use the CLI. Make sure you populate all of the parameters and their values:
Here is an example of how to use the CLI. Make sure you populate all of the parameters and their values from the above list:
```bash
$ aws cloudformation create-stack --stack-name teststack --template-url <templateurl> --parameters ParameterKey=KeyName,ParameterValue=<keyname> ParameterKey=InstanceType,ParameterValue=t2.micro ParameterKey=ManagerInstanceType,ParameterValue=t2.micro ParameterKey=ClusterSize,ParameterValue=1 --capabilities CAPABILITY_IAM
$ aws cloudformation create-stack --stack-name teststack --template-url <templateurl> --parameters ParameterKey=<keyname>,ParameterValue=<keyvalue> ParameterKey=InstanceType,ParameterValue=t2.micro ParameterKey=ManagerInstanceType,ParameterValue=t2.micro ParameterKey=ClusterSize,ParameterValue=1 .... --capabilities CAPABILITY_IAM
```
To fully automate installs, you can use the [AWS Cloudformation API](http://docs.aws.amazon.com/AWSCloudFormation/latest/APIReference/Welcome.html).
## How it works
### How it works
Docker for AWS starts with a CloudFormation template that will create everything that you need from scratch. There are only a few prerequisites that are listed above.
@ -161,12 +167,12 @@ If you increase the number of instances running in your worker Auto Scaling Grou
Elastic Load Balancers (ELBs) are set up to help with routing traffic to your swarm.
## Logging
### Logging
Docker for AWS automatically configures logging to Cloudwatch for containers you run on Docker for AWS. A Log Group is created for each Docker for AWS install, and a log stream for each container.
The `docker logs` and `docker service logs` commands are not supported on Docker for AWS when using Cloudwatch for logs. Instead, check container logs in CloudWatch.
## System containers
### System containers
Each node will have a few system containers running on them to help run your swarm cluster. In order for everything to run smoothly, please keep those containers running, and don't make any changes. If you make any changes, Docker for AWS will not work correctly.

View File

@ -4,6 +4,8 @@ keywords: aws persistent data volumes
title: Docker for AWS persistent data volumes
---
{% include d4a_buttons.md %}
## What is Cloudstor?
Cloudstor a volume plugin managed by Docker. It comes pre-installed and pre-configured in swarms deployed on Docker for AWS. Swarm tasks use a volume created through Cloudstor to mount a persistent data volume that stays attached to the swarm tasks no matter which swarm node they get scheduled or migrated to. Cloudstor relies on shared storage infrastructure provided by AWS to allow swarm tasks to create/mount their persistent volumes on any node in the swarm. In a future release we will introduce support for direct attached storage to satisfy very low latency/high IOPs requirements.
@ -15,7 +17,7 @@ After creating a swarm on Docker for AWS and connecting to any manager using SSH
```bash
$ docker plugin ls
ID NAME DESCRIPTION ENABLED
f416c95c0dcc docker4x/cloudstor:aws-v1.13.1-beta18 cloud storage plugin for Docker true
f416c95c0dcc docker4x/cloudstor:aws-v{{ edition_version }} cloud storage plugin for Docker true
```
**Note**: Make note of the plugin tag name, because it will change between versions, and yours may be different then listed here.
@ -26,7 +28,7 @@ The following examples show how to create swarm services that require data persi
```bash
docker service create --replicas 5 --name ping1 \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v1.13.1-beta18,source=sharedvol1,destination=/shareddata \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v{{ edition_version }},source=sharedvol1,destination=/shareddata \
alpine ping docker.com
```
@ -39,7 +41,7 @@ With the above example, you can make sure that the volume is indeed shared by lo
```bash
{% raw %}
docker service create --replicas 5 --name ping2 \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v1.13.1-beta18,source={{.Service.Name}}-{{.Task.Slot}}-vol,destination=/mydata \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v{{ edition_version }},source={{.Service.Name}}-{{.Task.Slot}}-vol,destination=/mydata \
alpine ping docker.com
{% endraw %}
```
@ -59,7 +61,7 @@ If you want a higher level of IO performance like the maxIO mode for EFS, a perf
```bash
{% raw %}
docker service create --replicas 5 --name ping3 \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v1.13.1-beta18,source={{.Service.Name}}-{{.Task.Slot}}-vol5,destination=/mydata,volume-opt=perfmode=maxio \
--mount type=volume,volume-driver=docker4x/cloudstor:aws-v{{ edition_version }},source={{.Service.Name}}-{{.Task.Slot}}-vol5,destination=/mydata,volume-opt=perfmode=maxio \
alpine ping docker.com
{% endraw %}
```

View File

@ -1,6 +1,6 @@
---
description: Release notes
keywords: aws, amazon, iaas, release
keywords: aws, amazon, iaas, release, edge, stable
title: Docker for AWS Release Notes
---
@ -8,16 +8,23 @@ title: Docker for AWS Release Notes
## Stable Channel
### 1.13.1-2 (stable)
Release date: 02/08/2017
### 17.03.0 CE
Release date: 03/01/2017
{{aws_button_latest}}
{{aws_blue_latest}}
**New**
- Docker Engine upgraded to [Docker 17.03.0 CE](https://github.com/docker/docker/blob/master/CHANGELOG.md)
### 1.13.1-2
Release date: 02/08/2017
**New**
- Docker Engine upgraded to [Docker 1.13.1](https://github.com/docker/docker/blob/master/CHANGELOG.md)
### 1.13.0-1 (stable)
### 1.13.0-1
Release date: 01/18/2017
**New**
@ -25,7 +32,16 @@ Release date: 01/18/2017
- Docker Engine upgraded to [Docker 1.13.0](https://github.com/docker/docker/blob/master/CHANGELOG.md)
- Change ELB health check from TCP to HTTP
## Beta Channel
## Edge Channel
### 17.03.0-edge CE
Release date: 03/01/2017
{{aws_blue_edge}}
**New**
- Docker Engine upgraded to [Docker 17.03.0 CE](https://github.com/docker/docker/blob/master/CHANGELOG.md)
### 1.13.1-beta18
Release date: 02/16/2017

View File

@ -5,7 +5,7 @@ title: Docker for Azure Frequently asked questions (FAQ)
toc_max: 2
---
## Stable and beta channels
## Stable and edge channels
Two different download channels are available for Docker for AWS:
@ -15,13 +15,13 @@ Two different download channels are available for Docker for AWS:
schedule is synched with Docker Engine releases and hotfixes. On the stable
channel, you can select whether to send usage statistics and other data.
* The **beta channel** provides a deployment with new features we are working on,
* The **edge channel** provides a deployment with new features we are working on,
but is not necessarily fully tested. It comes with the experimental version of
Docker Engine. Bugs, crashes and issues are more likely to occur with the beta
Docker Engine. Bugs, crashes and issues are more likely to occur with the edge
cluster, but you get a chance to preview new functionality, experiment, and provide
feedback as the deployment evolve. Releases are typically more frequent than for
stable, often one or more per month. Usage statistics and crash reports are sent
by default. You do not have the option to disable this on the beta channel.
by default. You do not have the option to disable this on the edge channel.
## Can I use my own VHD?
No, at this time we only support the default Docker for Azure VHD.

View File

@ -8,21 +8,27 @@ redirect_from:
{% include d4a_buttons.md %}
## Quickstart
## Docker Enterprise Edition (EE) for Azure
This deployment is fully baked and tested, and comes with the latest Enterprise Edition version of Docker. <br/>This release is maintained and receives <strong>security and critical bugfixes for one year</strong>.
<a class="button darkblue-btn" href="https://store.docker.com/editions/enterprise/docker-ee-azure?tab=description" target="_blank">Deploy Docker Enterprise Edition (EE) for Azure</a>
## Docker Community Edition (CE) for Azure
### Quickstart
If your account has the [proper permissions](#prerequisites), you can generate the [Service Principal](#service-principal) and
then choose from the stable or beta channel to bootstrap Docker for Azure using Azure Resource Manager.
For more about stable and beta channels, see the [FAQs](/docker-for-azure/faqs.md#stable-and-beta-channels)
then choose from the stable or edge channel to bootstrap Docker for Azure using Azure Resource Manager.
For more about stable and edge channels, see the [FAQs](/docker-for-azure/faqs.md#stable-and-edge-channels)
<table style="width:100%">
<tr>
<th style="font-size: x-large; font-family: arial">Stable channel</th>
<th style="font-size: x-large; font-family: arial">Beta channel</th>
<th style="font-size: x-large; font-family: arial">Edge channel</th>
</tr>
<tr valign="top">
<td width="50%">The stable deployment is fully baked and tested, and comes with the latest GA version of Docker Engine. <br><br>This is the best channel to use if you want a reliable platform to work with. <br><br>These releases follow a version schedule with a longer lead time than the betas, synched with Docker Engine releases and hotfixes.
</td>
<td width="50%">The beta deployment offers cutting edge features and comes with the experimental version of Docker Engine, described in the <a href="https://github.com/docker/docker/tree/master/experimental">Docker Experimental Features README</a> on GitHub.<br><br>This is the best channel to use if you want to experiment with features under development, and can weather some instability and bugs. This channel is a continuation of the beta program, where you can provide feedback as the apps evolve. Releases are typically more frequent than for stable, often one or more per month. <br><br>We collect usage data on betas across the board.</td>
<td width="50%">This deployment is fully baked and tested, and comes with the latest CE version of Docker. <br><br>This is the best channel to use if you want a reliable platform to work with. <br><br>Stable is released quarterly and is for users that want an easier-to-maintain release pace.</td>
<td width="50%">This deployment offers cutting edge features of the CE version of Docker and comes with experimental features turned on, described in the <a href="https://github.com/docker/docker/tree/master/experimental">Docker Experimental Features README</a> on GitHub.<br><br>This is the best channel to use if you want to experiment with features under development, and can weather some instability and bugs. Edge is for users wanting a drop of the latest and greatest features every month <br><br>We collect usage data on edges across the board.</td>
</tr>
<tr valign="top">
<td width="50%">
@ -34,33 +40,33 @@ For more about stable and beta channels, see the [FAQs](/docker-for-azure/faqs.m
</tr>
</table>
## Prerequisites
### Prerequisites
- Access to an Azure account with admin privileges
- SSH key that you want to use when accessing your completed Docker install on Azure
## Configuration
### Configuration
Docker for Azure is installed with an Azure template that configures Docker in swarm-mode, running on VMs backed by a custom VHD. There are two ways you can deploy Docker for Azure. You can use the Azure Portal (browser based), or use the Azure CLI. Both have the following configuration options.
### Configuration options
#### Configuration options
#### Manager Count
##### Manager Count
The number of Managers in your swarm. You can pick either 1, 3 or 5 managers. We only recommend 1 manager for testing and dev setups. There are no failover guarantees with 1 manager — if the single manager fails the swarm will go down as well. Additionally, upgrading single-manager swarms is not currently guaranteed to succeed.
We recommend at least 3 managers, and if you have a lot of workers, you should pick 5 managers.
#### Manager VM size
##### Manager VM size
The VM type for your manager nodes. The larger your swarm, the larger the VM size you should use.
#### Worker VM size
##### Worker VM size
The VM type for your worker nodes.
#### Worker Count
##### Worker Count
The number of workers you want in your swarm (1-100).
### Service Principal
#### Service Principal
To set up Docker for Azure, a [Service Principal](https://azure.microsoft.com/en-us/documentation/articles/active-directory-application-objects/) is required. Docker for Azure uses the principal to operate Azure APIs as you scale up and down or deploy apps on your swarm. Docker provides a containerized helper-script to help create the Service Principal - `docker4x/create-sp-azure`.
@ -78,7 +84,7 @@ AD App Secret: <secret>
AD Tenant ID: <tenant-id>
```
If you have multiple Azure subscriptions, make sure you're creating the Service Principal with subscription ID that you shared with Docker when signing up for the beta.
If you have multiple Azure subscriptions, make sure you're creating the Service Principal with subscription ID that you will be using to deploy Docker for Azure.
* `sp-name` is the name of the authentication app that the script creates with Azure. The name is not important, simply choose something you'll recognize in the Azure portal. Example: `sp1`.
* `rg-name` is the name of the new resource group that will be created to deploy the resources (VMs, networks, storage accounts) associated with the swarm. The Service Principal will be scoped to this resource group. Example: `swarm1`.
@ -92,13 +98,13 @@ When setting up the ARM template, you will be prompted for the App ID (a UUID) a
<img src="img/service-principal.png" />
### SSH Key
#### SSH Key
Docker for Azure uses SSH for accessing the Docker swarm once it's deployed. During setup, you will be prompted for a SSH public key. If you don't have a SSH key, you can generate one with `puttygen` or `ssh-keygen`. You only need the public key component to set up Docker for Azure. Here's how to get the public key from a .pem file:
ssh-keygen -y -f my-key.pem
### Installing with the CLI
#### Installing with the CLI
You can also invoke the Docker for Azure template from the Azure CLI:

View File

@ -4,6 +4,8 @@ keywords: azure persistent data volumes
title: Docker for Azure persistent data volumes
---
{% include d4a_buttons.md %}
## What is Cloudstor?
Cloudstor a volume plugin managed by Docker. It comes pre-installed and pre-configured in swarms deployed on Docker for Azure. Swarm tasks use a volume created through Cloudstor to mount a persistent data volume that stays attached to the swarm tasks no matter which swarm node they get scheduled or migrated to. Cloudstor relies on shared storage infrastructure provided by Azure to allow swarm tasks to create/mount their persistent volumes on any node in the swarm. In a future release we will introduce support for direct attached storage to satisfy very low latency/high IOPs requirements.
@ -15,7 +17,7 @@ After creating a swarm on Docker for Azure and connecting to any manager using S
```bash
$ docker plugin ls
ID NAME DESCRIPTION ENABLED
f416c95c0dcc docker4x/cloudstor:azure-v1.13.1-beta18 cloud storage plugin for Docker true
f416c95c0dcc docker4x/cloudstor:azure-v{{ edition_version }} cloud storage plugin for Docker true
```
**Note**: Make note of the plugin tag name, because it will change between versions, and yours may be different then listed here.
@ -26,7 +28,7 @@ The following examples show how to create swarm services that require data persi
```bash
docker service create --replicas 5 --name ping1 \
--mount type=volume,volume-driver=docker4x/cloudstor:azure-v1.13.1-beta18,source=sharedvol1,destination=/shareddata \
--mount type=volume,volume-driver=docker4x/cloudstor:azure-v{{ edition_version }},source=sharedvol1,destination=/shareddata \
alpine ping docker.com
```
@ -39,7 +41,7 @@ With the above example, you can make sure that the volume is indeed shared by lo
```bash
{% raw %}
docker service create --replicas 5 --name ping2 \
--mount type=volume,volume-driver=docker4x/cloudstor:azure-v1.13.1-beta18,source={{.Service.Name}}-{{.Task.Slot}}-vol,destination=/mydata \
--mount type=volume,volume-driver=docker4x/cloudstor:azure-v{{ edition_version }},source={{.Service.Name}}-{{.Task.Slot}}-vol,destination=/mydata \
alpine ping docker.com
{% endraw %}
```

View File

@ -1,6 +1,6 @@
---
description: Release notes
keywords: azure, microsoft, iaas, tutorial
keywords: azure, microsoft, iaas, tutorial, edge, stable
title: Docker for Azure Release Notes
---
@ -8,10 +8,17 @@ title: Docker for Azure Release Notes
## Stable Channel
### 1.13.1-2 (stable)
### 17.03.0 CE
Release date: 02/08/2017
{{azure_button_latest}}
{{azure_blue_latest}}
**New**
- Docker Engine upgraded to [Docker 17.03.0 CE](https://github.com/docker/docker/blob/master/CHANGELOG.md)
### 1.13.1-2
Release date: 02/08/2017
**New**
@ -28,7 +35,16 @@ Release date: 1/18/2017
- Added support to scale the number of nodes in manager and worker vm scale sets through Azure UI/CLI for managing the number of nodes in a scale set
- Improved logging and remote diagnostics mechanisms for system containers
## Beta Channel
## Edge Channel
### 17.03.0-edge CE
Release date: 03/01/2017
{{azure_blue_edge}}
**New**
- Docker Engine upgraded to [Docker 17.03.0 CE](https://github.com/docker/docker/blob/master/CHANGELOG.md)
### 1.13.1-beta18
Release date: 02/16/2017

View File

@ -10,48 +10,48 @@ title: Frequently asked questions (FAQ)
[Docker Knowledge Hub](http://success.docker.com/) for knowledge base articles,
FAQs, technical support for various subscription levels, and more.
### Stable and beta channels
### Stable and Edge channels
**Q: How do I get the stable or beta version of Docker for Mac?**
**Q: How do I get the Stable or Edge version of Docker for Mac?**
A: Use the download links for the channels given in the topic
[Download Docker for Mac](install.md#download-docker-for-mac).
This topic also has more information about the two channels.
**Q: What is the difference between the stable and beta versions of Docker for Mac?**
**Q: What is the difference between the Stable and Edge versions of Docker for Mac?**
A: Two different download channels are available for Docker for Mac:
* The **stable channel** provides a general availability release-ready installer
for a fully baked and tested, more reliable app. The stable version of Docker
* The **Stable channel** provides a general availability release-ready installer
for a fully baked and tested, more reliable app. The Stable version of Docker
for Mac comes with the latest released version of Docker Engine. The release
schedule is synched with Docker Engine releases and hotfixes. On the stable
schedule is synched with Docker Engine releases and hotfixes. On the Stable
channel, you can select whether to send usage statistics and other data.
* The **beta channel** provides an installer with new features we are working on,
* The **Edge channel** provides an installer with new features we are working on,
but is not necessarily fully tested. It comes with the experimental version of
Docker Engine. Bugs, crashes and issues are more likely to occur with the beta
Docker Engine. Bugs, crashes and issues are more likely to occur with the Edge
app, but you get a chance to preview new functionality, experiment, and provide
feedback as the apps evolve. Releases are typically more frequent than for
stable, often one or more per month. Usage statistics and crash reports are sent
by default. You do not have the option to disable this on the beta channel.
Stable, often one or more per month. Usage statistics and crash reports are sent
by default. You do not have the option to disable this on the Edge channel.
**Q: Can I switch back and forth between stable and beta versions of Docker for Mac?**
**Q: Can I switch back and forth between Stable and Edge versions of Docker for Mac?**
A: Yes, you can switch between versions to try out the betas to see what's new,
then go back to stable for other work. However, **you can have only one app
installed at a time**. Switching back and forth between stable and beta apps can
A: Yes, you can switch between versions to try out the Edge releases to see what's new,
then go back to Stable for other work. However, **you can have only one app
installed at a time**. Switching back and forth between Stable and Edge apps can
destabilize your development environment, particularly in cases where you switch
from a newer (beta) channel to older (stable).
from a newer (Edge) channel to older (Stable).
For example, containers created with a newer beta version of Docker for Mac may
not work after you switch back to stable because they may have been created
leveraging beta features that aren't in stable yet. Just keep this in mind as
you create and work with beta containers, perhaps in the spirit of a playground
For example, containers created with a newer Edge version of Docker for Mac may
not work after you switch back to Stable because they may have been created
leveraging Edge features that aren't in Stable yet. Just keep this in mind as
you create and work with Edge containers, perhaps in the spirit of a playground
space where you are prepared to troubleshoot or start over.
To safely switch between beta and stable versions be sure
<font color="#CC3366">To safely switch between Edge and Stable versions be sure
to save images and export the containers you need, then uninstall the current
version before installing another. The workflow is described in more detail
below.<br>
@ -66,9 +66,9 @@ Do the following each time:
[export](/engine/reference/commandline/export.md) in the Docker Engine
command line reference.)
3. Uninstall the current app (whether stable or beta).
3. Uninstall the current app (whether Stable or Edge).
4. Install a different version of the app (stable or beta).
4. Install a different version of the app (Stable or Edge).
### What is Docker.app?
@ -106,26 +106,29 @@ response.
### Can I use Docker for Mac with new swarm mode?
Yes, you can use Docker for Mac to test single-node features of
[swarm mode](/engine/swarm/index.md) introduced with Docker Engine 1.12,
including initializing a swarm with a single node, creating services, and scaling
Yes, you can use Docker for Mac to test single-node features of [swarm
mode](/engine/swarm/index.md) introduced with Docker Engine 1.12, including
initializing a swarm with a single node, creating services, and scaling
services. Docker “Moby” on Hyperkit will serve as the single swarm node. You can
also use Docker Machine, which comes with Docker for Mac, to create and
experiment a multi-node swarm. Check out the tutorial at
[Get started with swarm mode](/engine/swarm/swarm-tutorial/index.md).
experiment a multi-node swarm. Check out the tutorial at [Get started with swarm
mode](/engine/swarm/swarm-tutorial/index.md).
### How do I connect to the remote Docker Engine API?
You might need to provide the location of the Engine API for Docker clients and development tools.
You might need to provide the location of the Engine API for Docker clients and
development tools.
On Docker for Mac, clients can connect to the Docker Engine through a Unix socket: `unix:///var/run/docker.sock`.
On Docker for Mac, clients can connect to the Docker Engine through a Unix
socket: `unix:///var/run/docker.sock`.
See also [Docker Engine API](/engine/api.md) and Docker for Mac forums topic
[Using pycharm Docker plugin..](https://forums.docker.com/t/using-pycharm-docker-plugin-with-docker-beta/8617).
[Using pycharm Docker
plugin..](https://forums.docker.com/t/using-pycharm-docker-plugin-with-docker-beta/8617).
If you are working with applications like
[Apache Maven](https://maven.apache.org/) that expect settings for `DOCKER_HOST`
and `DOCKER_CERT_PATH` environment variables, specify these to connect to Docker
If you are working with applications like [Apache
Maven](https://maven.apache.org/) that expect settings for `DOCKER_HOST` and
`DOCKER_CERT_PATH` environment variables, specify these to connect to Docker
instances through Unix sockets. For example:
```bash
@ -239,14 +242,15 @@ to talk to Docker for Mac. The same applies to `docker-compose`.
You might decide that you do not need Toolbox now that you have Docker for Mac,
and want to uninstall it. For details on how to perform a clean uninstall of
Toolbox on the Mac, see
[How to uninstall Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox)
in the Toolbox Mac topics.
Toolbox on the Mac, see [How to uninstall
Toolbox](/toolbox/toolbox_install_mac.md#how-to-uninstall-toolbox) in the
Toolbox Mac topics.
### What is HyperKit?
HyperKit is a hypervisor built on top of the Hypervisor.framework in macOS 10.10
Yosemite and higher. It runs entirely in userspace and has no other dependencies.
Yosemite and higher. It runs entirely in userspace and has no other
dependencies.
We use HyperKit to eliminate the need for other VM products, such as Oracle
Virtualbox or VMWare Fusion.

Binary file not shown.

After

Width:  |  Height:  |  Size: 76 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 343 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 233 KiB

After

Width:  |  Height:  |  Size: 246 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 33 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 90 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.7 KiB

After

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 566 B

View File

@ -96,8 +96,12 @@ docker-machine version 0.9.0, build 15fd4c7
## Preferences
Choose ![whale-x](/docker-for-mac/images/whale-x.png) --> **Preferences** from the menu bar. You
can set the following runtime options.
Choose ![whale-x](/docker-for-mac/images/whale-x.png) --> **Preferences** from
the menu bar.
![Docker context menu](images/menu-prefs-selected.png)
You can set the following runtime options.
### General
@ -349,6 +353,28 @@ component of the next-generation Docker Hub, and the best place
to find compliant, trusted commercial and free software
distributed as Docker Images.
![Docker Store](images/docker-store.png)
## Docker Cloud
You can access your Docker Cloud account from within Docker for Mac.
![Docker Cloud](images/docker-cloud.png)
From the Docker for Mac menu, sign in to Docker Cloud with your Docker ID, or
create one.
![Docker Cloud sign-in](images/menu-cloud-sign-in.png)
Then use the Docker for Mac menu to create, view, or navigate directly to
your Cloud resources:
* Organizations
* Repositories
* Swarms
Check out the [Docker Cloud topics](/docker-cloud/index.md) to learn more.
## Where to go next
* Try out the tutorials and sample app walkthroughs at [Learn Docker](/learn.md), including:

View File

@ -15,13 +15,13 @@ to the tutorials at [Learn Docker](/learn.md).
## Download Docker for Mac
If you have not already done so, please install Docker for Mac. You can download
installers from the stable or beta channel. For more about stable and beta
channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-beta-channels).
installers from the Stable or beta channel. For more about Stable and Edge
channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-edge-channels).
<table style="width:100%">
<tr>
<th>Stable channel</th>
<th>Beta channel</th>
<th style="font-size: x-large; font-family: arial">Stable channel</th>
<th style="font-size: x-large; font-family: arial">Edge channel</th>
</tr>
<tr valign="top">
<td width="50%">This installer is fully baked and tested, and comes
@ -30,30 +30,28 @@ channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-beta-channels).
default and configurable on <a href="index#daemon-experimental-mode">Docker Daemon preferences for experimental mode</a>. <br><br>This is the
best channel to use if you want a reliable platform to work with.
(Be sure to disable experimental features for apps in production.) <br><br>These releases follow a version schedule with a longer lead
time than the betas, synched with Docker Engine releases and
hotfixes.<br><br>On the stable channel, you can select whether to send usage
time than the Edge releases, synched with Docker Engine releases and
hotfixes.<br><br>On the Stable channel, you can select whether to send usage
statistics and other data.
</td>
<td width="50%">This installer provides the latest Beta release of
<td width="50%">This installer provides the latest Edge release of
Docker for Mac, offers cutting edge features along with
<a href="https://github.com/docker/docker/blob/master/experimental/README.md"> experimental features in Docker Engine</a>, which are enabled by
default and configurable on <a href="index#daemon-experimental-mode">Docker Daemon preferences for experimental mode</a>. <br><br>This is the
best channel to use if you want to experiment with features under development, and can weather some instability and bugs. This channel
is a continuation of the beta program, where you can provide feedback
is a continuation of the Edge program, where you can provide feedback
as the apps evolve. Releases are typically more frequent than for
stable, often one or more per month. <br><br>We collect all usage
data on betas across the board.</td>
Stable, often one or more per month. <br><br>We collect all usage
data on Edge releases across the board.</td>
</tr>
<tr valign="top">
<td width="50%">
<a class="button primary-btn" href="https://download.docker.com/mac/stable/Docker.dmg">Get Docker for Mac (stable)</a><br><br>
<a class="text-link" href="https://download.docker.com/mac/stable/Docker.dmg.sha256sum">Download checksum: Docker.dmg SHA256</a>
<a class="button darkblue-btn" href="https://download.docker.com/mac/stable/Docker.dmg">Get Docker for Mac (Stable)</a><br><br>
<a href="https://download.docker.com/mac/stable/Docker.dmg.sha256sum"><font color="#BDBDBD" size="-1">Download checksum: Docker.dmg SHA256</font></a>
</td>
<td width="50%">
<a class="button primary-btn" href="https://download.docker.com/mac/beta/Docker.dmg">Get Docker for Mac (beta)</a><br><br>
<a class="text-link" href="https://download.docker.com/mac/beta/Docker.dmg.sha256sum">Download checksum: Docker.dmg SHA256</a>
<a class="button darkblue-btn" href="https://download.docker.com/mac/beta/Docker.dmg">Get Docker for Mac (Edge)</a><br><br>
<a href="https://download.docker.com/mac/beta/Docker.dmg.sha256sum"><font color="#BDBDBD" size="-1">Download checksum: Docker.dmg SHA256</font></a>
</td>
</tr>
</table>
@ -65,11 +63,11 @@ channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-beta-channels).
[What to know before you install](#what-to-know-before-you-install)
for a full explanation and list of prerequisites.
>
> - You can switch between beta and stable versions, but you must have only one
> - You can switch between Edge and Stable versions, but you must have only one
app installed at a time. Also, you will need to save images and export
containers you want to keep before uninstalling the current version before
installing another. For more about this, see the
[FAQs about beta and stable channels](faqs.md#stable-and-beta-channels).
[FAQs about Stable and Edge channels](faqs.md#stable-and-edge-channels).
## What to know before you install
@ -100,8 +98,8 @@ channels, see the [FAQs](/docker-for-mac/faqs.md#stable-and-beta-channels).
Docker for Mac requires macOS Yosemite 10.10.3 or newer, with the caveat
that going forward 10.10.x is a use-at-your-own risk proposition.
<p />
- Starting with Docker for Mac stable release 1.13 (upcoming), and concurrent
Beta releases, we will no longer address issues specific to OS X Yosemite
- Starting with Docker for Mac Stable release 1.13 (upcoming), and concurrent
Edge releases, we will no longer address issues specific to OS X Yosemite
10.10. In future releases, Docker for Mac could stop working on OS X Yosemite
10.10 due to the deprecated status of this OS X version. We recommend
upgrading to the latest version of macOS.
@ -165,6 +163,6 @@ workarounds, how to run and submit diagnostics, and submit issues.
* [FAQs](faqs.md) provides answers to frequently asked questions.
* [Release Notes](release-notes.md) lists component updates, new features, and improvements associated with Stable and Beta releases.
* [Release Notes](release-notes.md) lists component updates, new features, and improvements associated with Stable and Edge releases.
* [Learn Docker](/learn.md) provides general Docker tutorials.

View File

@ -112,7 +112,7 @@ container to random ports on the host.
docker run -d -P --name webserver nginx
See the [run commmand](/engine/reference/commandline/run.md) for more details on
See the [run command](/engine/reference/commandline/run.md) for more details on
publish options used with `docker run`.
#### A view into implementation

View File

@ -18,6 +18,28 @@ about both kinds of releases, and download stable and beta product installers at
## Stable Release Notes
### Docker Community Edition 17.03.0, 2017-03-02 (stable)
**New**
- Renamed to Docker Community Edition
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories. This feature is going to be rolled out to all users progressively
- Docker will now securely store your IDs in the macOS keychain
**Upgrades**
- [Docker 17.03.0-ce](https://github.com/docker/docker/releases/tag/v17.03.0-ce)
- [Docker Machine 0.10.0](https://github.com/docker/machine/releases/tag/v0.10.0)
- [Docker Compose 1.11.2](https://github.com/docker/compose/releases/tag/1.11.2)
- Linux Kernel 4.9.11
**Bug fixes and minor changes**
- VPNKit: fixed unmarshalling of DNS packets containing pointers to pointers to labels
- osxfs: catch EPERM when reading extended attributes of non-files
- Added `page_poison=1` to boot args
- Added a new disk flushing option
### Docker for Mac 1.13.1, 2017-02-09 (stable)
**Upgrades**
@ -279,9 +301,31 @@ events or unexpected unmounts.
* Docker Machine 0.8.0
* Docker Compose 1.8.0
## Beta Release Notes
## Edge Release Notes
### Docker Community Edition 17.03.0 Release Notes (2017-02-22 17.03.0-ce-rc1-mac1)
### Docker Community Edition 17.03.0 Release Notes (2017-03-02 17.03.0-ce-mac1)
**New**
- Renamed to Docker Community Edition
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories. This feature is going to be rolled out to all users progressively
- Docker will now securely store your IDs in the macOS keychain
**Upgrades**
- [Docker 17.03.0-ce](https://github.com/docker/docker/releases/tag/v17.03.0-ce)
- [Docker Machine 0.10.0](https://github.com/docker/machine/releases/tag/v0.10.0)
- [Docker Compose 1.11.2](https://github.com/docker/compose/releases/tag/1.11.2)
- Linux Kernel 4.9.11
**Bug fixes and minor changes**
- VPNKit: fixed unmarshalling of DNS packets containing pointers to pointers to labels
- osxfs: catch EPERM when reading extended attributes of non-files
- Added `page_poison=1` to boot args
- Added a new disk flushing option
### Docker Community Edition 17.03.0 RC1 Release Notes (2017-02-22 17.03.0-ce-rc1-mac1)
**New**

View File

@ -8,48 +8,48 @@ title: Frequently asked questions (FAQ)
Knowledge Hub](http://success.docker.com/) for knowledge base articles, FAQs,
technical support for various subscription levels, and more.
### Questions about stable and beta channels
### Questions about Stable and Edge channels
**Q: How do I get the stable or beta version of Docker for Windows?**
**Q: How do I get the Stable or Edge version of Docker for Windows?**
A: Use the download links for the channels given in the topic
[Download Docker for Windows](/docker-for-windows/install.md#download-docker-for-windows).
This topic also has more information about the two channels.
**Q: What is the difference between the stable and beta versions of Docker for Windows?**
**Q: What is the difference between the Stable and Edge versions of Docker for Windows?**
A: Two different download channels are available for Docker for Windows:
* The **stable channel** provides a general availability release-ready installer
for a fully baked and tested, more reliable app. The stable version of Docker
* The **Stable channel** provides a general availability release-ready installer
for a fully baked and tested, more reliable app. The Stable version of Docker
for Windows comes with the latest released version of Docker Engine. The
release schedule is synched with Docker Engine releases and hotfixes. On the
stable channel, you can select whether to send usage statistics and other data.
Stable channel, you can select whether to send usage statistics and other data.
* The **beta channel** provides an installer with new features we are working on,
* The **Edge channel** provides an installer with new features we are working on,
but is not necessarily fully tested. It comes with the experimental version of
Docker Engine. Bugs, crashes and issues are more likely to occur with the beta
Docker Engine. Bugs, crashes and issues are more likely to occur with the Edge
app, but you get a chance to preview new functionality, experiment, and provide
feedback as the apps evolve. Releases are typically more frequent than for
stable, often one or more per month. Usage statistics and crash reports are
sent by default. You do not have the option to disable this on the beta channel.
Stable, often one or more per month. Usage statistics and crash reports are
sent by default. You do not have the option to disable this on the Edge channel.
**Q: Can I switch back and forth between stable and beta versions of Docker for Windows?**
**Q: Can I switch back and forth between Stable and Edge versions of Docker for Windows?**
A: Yes, you can switch between versions to try out the betas to see what's new,
then go back to stable for other work. However, **you can have only one app
installed at a time**. Switching back and forth between stable and beta apps can
destabilize your development environment, particularly in cases where you
switch from a newer (beta) channel to older (stable).
A: Yes, you can switch between versions to try out the Edge release to see
what's new, then go back to Stable for other work. However, **you can have only
one app installed at a time**. Switching back and forth between Stable and Edge
apps can destabilize your development environment, particularly in cases where
you switch from a newer (Edge) channel to older (Stable).
For example, containers created with a newer beta version of Docker for Windows
may not work after you switch back to stable because they may have been created
leveraging beta features that aren't in stable yet. Just keep this in mind as
you create and work with beta containers, perhaps in the spirit of a playground
For example, containers created with a newer Edge version of Docker for Windows
may not work after you switch back to Stable because they may have been created
leveraging Edge features that aren't in Stable yet. Just keep this in mind as
you create and work with Edge containers, perhaps in the spirit of a playground
space where you are prepared to troubleshoot or start over.
<font color="#CC3366">To safely switch between beta and stable versions be sure
<font color="#CC3366">To safely switch between Edge and Stable versions be sure
to save images and export the containers you need, then uninstall the current
version before installing another. The workflow is described in more detail
below.</font><br>
@ -64,9 +64,9 @@ Do the following each time:
[export](/engine/reference/commandline/export.md) in the Docker Engine command
line reference.)
3. Uninstall the current app (whether stable or beta).
3. Uninstall the current app (whether Stable or Edge).
4. Install a different version of the app (stable or beta).
4. Install a different version of the app (Stable or Edge).
### What kind of feedback are we looking for?
@ -140,16 +140,22 @@ To learn more about the reasons for this limitation, see the following discussio
### How do I add custom CA certificates?
Starting with Docker for Windows 1.12.1, 2016-09-16 (stable) and Beta 26 (2016-09-14 1.12.1-beta26), all trusted CAs (root or intermediate) are supported. Docker recognizes certs stored under Trust Root Certification Authorities or Intermediate Certification Authorities.
Starting with Docker for Windows 1.12.1, 2016-09-16 (Stable) and Beta 26
(2016-09-14 1.12.1-beta26), all trusted CAs (root or intermediate) are
supported. Docker recognizes certs stored under Trust Root Certification
Authorities or Intermediate Certification Authorities.
Docker for Windows creates a certificate bundle of all user-trusted CAs based on the Windows certificate store, and appends it to Moby trusted certificates. So if an enterprise SSL certificate is trusted by the user on the host, it will be trusted by Docker for Windows.
Docker for Windows creates a certificate bundle of all user-trusted CAs based on
the Windows certificate store, and appends it to Moby trusted certificates. So
if an enterprise SSL certificate is trusted by the user on the host, it will be
trusted by Docker for Windows.
To learn more, see the GitHub issue
[Allow user to add custom Certificate Authorities ](https://github.com/docker/for-win/issues/48).
To learn more, see the GitHub issue [Allow user to add custom Certificate
Authorities ](https://github.com/docker/for-win/issues/48).
### Why does Docker for Windows sometimes lose network connectivity (e.g., `push`/`pull` doesn't work)?
Networking is not yet fully stable across network changes and system sleep
Networking is not yet fully Stable across network changes and system sleep
cycles. Exit and start Docker to restore connectivity.
### Can I use VirtualBox alongside Docker 4 Windows?

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 148 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 337 KiB

After

Width:  |  Height:  |  Size: 392 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 317 KiB

After

Width:  |  Height:  |  Size: 406 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 125 KiB

After

Width:  |  Height:  |  Size: 175 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 88 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 106 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 92 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 68 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 265 KiB

After

Width:  |  Height:  |  Size: 343 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 66 KiB

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 80 KiB

After

Width:  |  Height:  |  Size: 108 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 69 KiB

After

Width:  |  Height:  |  Size: 94 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

After

Width:  |  Height:  |  Size: 566 B

View File

@ -624,6 +624,28 @@ component of the next-generation Docker Hub, and the best place
to find compliant, trusted commercial and free software
distributed as Docker Images.
![Docker Store](images/docker-store.png)
### Docker Cloud
You can access your Docker Cloud account from within Docker for Windows.
![Docker Cloud](images/docker-cloud.png)
From the Docker for Windows menu, sign in to Docker Cloud with your Docker ID,
or create one.
![Docker Cloud sign-in](images/docker-cloud-menu.png)
Then use the Docker for Windows menu to create, view, or navigate directly to
your Cloud resources:
* Organizations
* Repositories
* Swarms
Check out the [Docker Cloud topics](/docker-cloud/index.md) to learn more.
### Diagnose and Feedback
If you encounter problems for which you do not find solutions in this documentation, searching [Docker for Windows issues on GitHub](https://github.com/docker/for-win/issues) already filed by other users, or on the [Docker for Windows forum](https://forums.docker.com/c/docker-for-windows), we can help you troubleshoot the log data.

View File

@ -1,6 +1,6 @@
---
description: How to install Docker for Windows
keywords: windows, beta, alpha, install, download
keywords: windows, beta, edge, alpha, install, download
title: Install Docker for Windows
---
@ -15,14 +15,14 @@ over to the tutorials at [Learn Docker](/learn.md).
## Download Docker for Windows
If you have not already done so, please install Docker for Windows. You can
download installers from the stable or beta channel. For more about stable and
beta channels, see the
[FAQs](/docker-for-windows/faqs.md#questions-about-stable-and-beta-channels).
download installers from the Stable or Edge channel. For more about Stable and
Edge channels, see the
[FAQs](/docker-for-windows/faqs.md#questions-about-stable-and-edge-channels).
<table style="width:100%">
<tr>
<th>Stable channel</th>
<th>Beta channel</th>
<th style="font-size: x-large; font-family: arial">Stable channel</th>
<th style="font-size: x-large; font-family: arial">Edge channel</th>
</tr>
<tr valign="top">
<td width="50%">This installer is fully baked and tested, and comes
@ -32,30 +32,30 @@ beta channels, see the
<a href="index#daemon-experimental-mode">Docker Daemon settings for
experimental mode</a>. <br><br>This is the best channel to use if
you want a reliable platform to work with. (Be sure to disable
experimental features for apps in production.) <br><br>These releases follow a version schedule with a longer lead time than the betas,
experimental features for apps in production.) <br><br>These releases follow a version schedule with a longer lead time than the Edge releases,
synched with Docker Engine releases and hotfixes.<br><br>On the
stable channel, you can select whether to send usage statistics
Stable channel, you can select whether to send usage statistics
and other data.
</td>
<td width="50%">This installer provides the latest Beta release of
<td width="50%">This installer provides the latest Edge release of
Docker for Windows, offers cutting edge features along with <a href="https://github.com/docker/docker/blob/master/experimental/README.md"> experimental features in Docker Engine</a>, which are enabled
by default and configurable on <a href="index#daemon-experimental-mode">
Docker Daemon settings for experimental mode</a>. <br><br>This is
the best channel to use if you want to experiment with features
under development, and can weather some instability and bugs. This
channel is a continuation of the beta program, where you can
channel is a continuation of the Edge program, where you can
provide feedback as the apps evolve. Releases are typically more
frequent than for stable, often one or more per month. <br><br>
We collect all usage data on betas across the board.</td>
frequent than for Stable, often one or more per month. <br><br>
We collect all usage data on Edge releases across the board.</td>
</tr>
<tr valign="top">
<td width="50%">
<a class="button primary-btn" href="https://download.docker.com/win/stable/InstallDocker.msi">Get Docker for Windows (stable)</a><br><br>
<a class="text-link" href="https://download.docker.com/win/stable/InstallDocker.msi.sha256sum">Download checksum: InstallDocker.msi SHA256</a>
<a class="button darkblue-btn" href="https://download.docker.com/win/stable/InstallDocker.msi">Get Docker for Windows (Stable)</a><br><br>
<a href="https://download.docker.com/win/stable/InstallDocker.msi.sha256sum"><font color="#BDBDBD" size="-1">Download checksum: InstallDocker.msi SHA256</font></a>
</td>
<td width="50%">
<a class="button primary-btn" href="https://download.docker.com/win/beta/InstallDocker.msi">Get Docker for Windows (beta)</a><br><br>
<a class="text-link" href="https://download.docker.com/win/beta/InstallDocker.msi.sha256sum">Download checksum: InstallDocker.msi SHA256</a>
<a class="button darkblue-btn" href="https://download.docker.com/win/beta/InstallDocker.msi">Get Docker for Windows (Edge)</a><br><br>
<a href="https://download.docker.com/win/beta/InstallDocker.msi.sha256sum"><font color="#BDBDBD" size="-1">Download checksum: InstallDocker.msi SHA256</font></a>
</td>
</tr>
</table>
@ -68,11 +68,11 @@ beta channels, see the
> [What to know before you install](/docker-for-windows/#what-to-know-before-you-install)
> for a full list of prerequisites.
>
> - You can switch between beta and stable versions, but you must have only one
> - You can switch between Edge and Stable versions, but you must have only one
> app installed at a time. Also, you will need to save images and export
> containers you want to keep before uninstalling the current version before
> installing another. For more about this, see the
> [FAQs about beta and stable channels](/docker-for-windows/faqs.md#questions-about-stable-and-beta-channels).
> [FAQs about Stable and Edge channels](/docker-for-windows/faqs.md#questions-about-stable-and-edge-channels).
## What to know before you install
@ -159,6 +159,6 @@ workarounds, how to run and submit diagnostics, and submit issues.
* [FAQs](faqs.md) provides answers to frequently asked questions.
* [Release Notes](release-notes.md) lists component updates, new features, and improvements associated with Stable and Beta releases.
* [Release Notes](release-notes.md) lists component updates, new features, and improvements associated with Stable and Edge releases.
* [Learn Docker](/learn.md) provides general Docker tutorials.

View File

@ -18,6 +18,29 @@ about both kinds of releases, and download stable and beta product installers at
## Stable Release Notes
### Docker Community Edition 17.03.0, 2017-03-02 (stable)
**New**
- Renamed to Docker Community Edition
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories. This feature is going to be rolled out to all users progressively
**Upgrades**
- [Docker 17.03.0-ce](https://github.com/docker/docker/releases/tag/v17.03.0-ce)
- [Docker Machine 0.10.0](https://github.com/docker/machine/releases/tag/v0.10.0)
- [Docker Compose 1.11.2](https://github.com/docker/compose/releases/tag/1.11.2)
- Linux Kernel 4.9.11
**Bug fixes and minor changes**
- VPNKit: fixed unmarshalling of DNS packets containing pointers to pointers to labels
- Match Hyper-V Integration Services by ID, not name
- Don't consume 100% CPU when the service is stopped
- Log the diagnostic id when uploading
- Improved Firewall handling: stop listing the rules since it can take a lot of time
- Don't rollback to the previous engine when the desired engine fails to start
### Docker for Windows 1.13.1, 2017-02-09 (stable)
**Upgrades**
@ -267,7 +290,30 @@ We did not distribute a 1.12.4 stable release
* Docker Machine 0.8.0
* Docker Compose 1.8.0
## Beta Release Notes
## Edge Release Notes
### Docker Community Edition 17.03.0 Release Notes (2017-03-02 17.03.0-ce-win1)
**New**
- Renamed to Docker Community Edition
- Integration with Docker Cloud: control remote Swarms from the local CLI and view your repositories. This feature is going to be rolled out to all users progressively
**Upgrades**
- [Docker 17.03.0-ce](https://github.com/docker/docker/releases/tag/v17.03.0-ce)
- [Docker Machine 0.10.0](https://github.com/docker/machine/releases/tag/v0.10.0)
- [Docker Compose 1.11.2](https://github.com/docker/compose/releases/tag/1.11.2)
- Linux Kernel 4.9.11
**Bug fixes and minor changes**
- VPNKit: fixed unmarshalling of DNS packets containing pointers to pointers to labels
- Match Hyper-V Integration Services by ID, not name
- Don't consume 100% CPU when the service is stopped
- Log the diagnostic id when uploading
- Improved Firewall handling: stop listing the rules since it can take a lot of time
- Don't rollback to the previous engine when the desired engine fails to start
### Docker Community Edition 17.03.0 Release Notes (2017-02-22 17.03.0-ce-rc1)
@ -281,7 +327,7 @@ We did not distribute a 1.12.4 stable release
- Docker 17.03.0-ce-rc1
- Linux Kernel 4.9.11
**Upgrades**
**Bug fixes and minor changes**
- VPNKit: Fixed unmarshalling of DNS packets containing pointers to pointers to labels
- Match Hyper-V Integration Services by ID, not name

View File

@ -28,7 +28,7 @@ example webhook below generates an HTTP POST that delivers a JSON payload:
"comment_count": "0",
"date_created": 1.417494799e+09,
"description": "",
"dockerfile": "#\n# BUILD\u0009\u0009docker build -t svendowideit/apt-cacher .\n# RUN\u0009\u0009docker run -d -p 3142:3142 -name apt-cacher-run apt-cacher\n#\n# and then you can run containers with:\n# \u0009\u0009docker run -t -i -rm -e http_proxy http://192.168.1.2:3142/ debian bash\n#\nFROM\u0009\u0009ubuntu\nMAINTAINER\u0009SvenDowideit@home.org.au\n\n\nVOLUME\u0009\u0009[\/var/cache/apt-cacher-ng\]\nRUN\u0009\u0009apt-get update ; apt-get install -yq apt-cacher-ng\n\nEXPOSE \u0009\u00093142\nCMD\u0009\u0009chmod 777 /var/cache/apt-cacher-ng ; /etc/init.d/apt-cacher-ng start ; tail -f /var/log/apt-cacher-ng/*\n",
"dockerfile": "#\n# BUILD\u0009\u0009docker build -t svendowideit/apt-cacher .\n# RUN\u0009\u0009docker run -d -p 3142:3142 -name apt-cacher-run apt-cacher\n#\n# and then you can run containers with:\n# \u0009\u0009docker run -t -i -rm -e http_proxy http://192.168.1.2:3142/ debian bash\n#\nFROM\u0009\u0009ubuntu\n\n\nVOLUME\u0009\u0009[\/var/cache/apt-cacher-ng\]\nRUN\u0009\u0009apt-get update ; apt-get install -yq apt-cacher-ng\n\nEXPOSE \u0009\u00093142\nCMD\u0009\u0009chmod 777 /var/cache/apt-cacher-ng ; /etc/init.d/apt-cacher-ng start ; tail -f /var/log/apt-cacher-ng/*\n",
"full_description": "Docker Hub based automated build from a GitHub repo",
"is_official": false,
"is_private": true,

View File

@ -144,7 +144,6 @@ case `192.168.1.52:6379`.
# use alpine because its a minimal image with a package manager.
# prettymuch all that is needed is a container that has a functioning env and socat (or equivalent)
FROM alpine:3.2
MAINTAINER SvenDowideit@home.org.au
RUN apk update && \
apk add socat && \

View File

@ -82,20 +82,21 @@ the state of all goroutines and threads within the daemon.
## Ubuntu
As of `14.04`, Ubuntu uses Upstart as a process manager. By default, Upstart
jobs are located in `/etc/init` and the `docker` Upstart job can be found at
`/etc/init/docker.conf`.
Ubuntu 16.04 and newer use `systemd` as the init system. Ubuntu 14.04 uses `upstart`.
Use the appropriate command below to check whether Docker is running:
After successfully [installing Docker for
Ubuntu](../installation/linux/ubuntulinux.md), you can check the running status
using Upstart in this way:
| Init system | Command |
|--------------|-----------------------------|
| `systemd` | `sudo systemctl is-active ` |
| `upstart` | `sudo status docker` |
You can also use Docker itself to check whether Docker is running:
```bash
$ sudo status docker
docker start/running, process 989
$ docker info
```
### Running Docker
You can start/stop/restart the `docker` daemon using

View File

@ -28,7 +28,6 @@ Let's start by creating a basic `Dockerfile` for our new image.
```Dockerfile
FROM ubuntu:16.04
MAINTAINER examples@docker.com
```
## Installing Supervisor
@ -98,7 +97,6 @@ Your completed Dockerfile now looks like this:
```Dockerfile
FROM ubuntu:16.04
MAINTAINER examples@docker.com
RUN apt-get update && apt-get install -y openssh-server apache2 supervisor
RUN mkdir -p /var/lock/apache2 /var/run/apache2 /var/run/sshd /var/log/supervisor

View File

@ -6,7 +6,6 @@
# docker run -t -i --rm -e http_proxy http://dockerhost:3142/ debian bash
#
FROM ubuntu
MAINTAINER SvenDowideit@docker.com
VOLUME ["/var/cache/apt-cacher-ng"]
RUN apt-get update && apt-get install -y apt-cacher-ng

View File

@ -27,7 +27,6 @@ Use the following Dockerfile:
# Here, `dockerhost` is the IP address or FQDN of a host running the Docker daemon
# which acts as an APT proxy server.
FROM ubuntu
MAINTAINER SvenDowideit@docker.com
VOLUME ["/var/cache/apt-cacher-ng"]
RUN apt-get update && apt-get install -y apt-cacher-ng

View File

@ -52,13 +52,6 @@ We will build our image using the latest version of Ubuntu from the
FROM ubuntu:latest
```
Continuing, we will declare the `MAINTAINER` of the `Dockerfile`:
```dockerfile
# Format: MAINTAINER Name <email@addr.ess>
MAINTAINER M.Y. Name <myname@addr.ess>
```
> **Note:** Although Ubuntu systems have MongoDB packages, they are likely to
> be outdated. Therefore in this example, we will use the official MongoDB
> packages.

View File

@ -3,7 +3,6 @@
# http://docs.mongodb.org/manual/tutorial/install-mongodb-on-ubuntu/
FROM ubuntu:16.04
MAINTAINER Docker
# Installation:
# Import MongoDB public GPG key AND create a MongoDB list file

View File

@ -3,7 +3,6 @@
#
FROM ubuntu
MAINTAINER SvenDowideit@docker.com
# Add the PostgreSQL PGP key to verify their Debian packages.
# It should be the same key as https://www.postgresql.org/media/keys/ACCC4CF8.asc

View File

@ -26,7 +26,6 @@ suitably secure.
#
FROM ubuntu
MAINTAINER SvenDowideit@docker.com
# Add the PostgreSQL PGP key to verify their Debian packages.
# It should be the same key as https://www.postgresql.org/media/keys/ACCC4CF8.asc

View File

@ -4,7 +4,6 @@
# Use the Ubuntu base image provided by dotCloud
FROM ubuntu:trusty
MAINTAINER Hector Castro hector@basho.com
# Install Riak repository before we do apt-get update, so that update happens
# in a single step

View File

@ -23,7 +23,6 @@ of. We'll use [Ubuntu](https://hub.docker.com/_/ubuntu/) (tag:
# Use the Ubuntu base image provided by dotCloud
FROM ubuntu:trusty
MAINTAINER Hector Castro hector@basho.com
After that, we install the curl which is used to download the repository setup
script and we download the setup script and run it.

View File

@ -1,5 +1,4 @@
FROM ubuntu:16.04
MAINTAINER Sven Dowideit <SvenDowideit@docker.com>
RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd

View File

@ -12,7 +12,6 @@ quick access to a test container.
```Dockerfile
FROM ubuntu:16.04
MAINTAINER Sven Dowideit <SvenDowideit@docker.com>
RUN apt-get update && apt-get install -y openssh-server
RUN mkdir /var/run/sshd

View File

@ -53,12 +53,17 @@ The `docker-stack.yml` file must be located on a manager for the swarm where you
We'll deploy the application from the manager.
1. Deploy the application stack based on the `.yml` using the command `docker stack deploy` as follows.
1. Deploy the application stack based on the `.yml` using the command
[`docker stack deploy`](/engine/reference/commandline/stack_deploy.md) as follows.
```
docker stack deploy --compose-file docker-stack.yml vote
```
* The `--compose-file` option specifies the path to our stack file. In this case, we assume it's in the current directory so we simply name the stack file: `docker-stack.yml`.
* For the example, we name this app `vote`, but we could name it anything we want.
Here is an example of the command and the output.
```

View File

@ -219,12 +219,13 @@ volumes:
## Docker stacks and services
To deploy the voting app, we will run the `docker stack deploy` command with
this `docker-stack.yml` file to pull the referenced images and launch the
services in a swarm. This allows us to run the application across multiple
servers, and use swarm mode for load balancing and performance. Rather than
thinking about running individual containers, we can start to model deployments
as application stacks and services.
To deploy the voting app, we will run the [`docker stack
deploy`](/engine/reference/commandline/stack_deploy.md) command with appropriate
options using this `docker-stack.yml` file to pull the referenced images and
launch the services in a swarm. This allows us to run the application across
multiple servers, and use swarm mode for load balancing and performance. Rather
than thinking about running individual containers, we can start to model
deployments as application stacks and services.
If you are interested in learning more about new Compose version 3.x features, Docker Engine 1.13.x, and swarm mode integration, check out the [list of resources](customize-app.md#resources) at the end of this tutorial.

View File

@ -98,8 +98,8 @@ on the separate [Release Notes page](/release-notes)
As changes are made to Docker there may be times when existing features
will need to be removed or replaced with newer features. Before an existing
feature is removed it will be labeled as "deprecated" within the documentation
and will remain in Docker for, usually, at least 3 releases. After that time
it may be removed.
and will remain in Docker for at least 3 stable releases (roughly 9 months).
After that time it may be removed.
Users are expected to take note of the list of deprecated features each
release and plan their migration away from those features, and (if applicable)

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 42 (36781) - http://www.bohemiancoding.com/sketch -->
<title>Round Check</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="System" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Round-Check">
<polygon id="Icon-Bounds" points="0 0 24 0 24 24 0 24"></polygon>
<circle id="Oval" fill="#00CBCA" cx="12" cy="12" r="11"></circle>
<polygon id="Combined-Shape" fill="#FBFBFC" points="7.04599508 11 5 13.1940611 10.1213203 17.9711941 18.9711941 9.12132034 16.8498737 7 10.0492724 13.8006014"></polygon>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 846 B

View File

@ -1,36 +1,80 @@
---
description: Lists the installation methods
keywords: Docker install
keywords: docker, installation, install, docker ce, docker ee, docker editions, stable, edge
redirect_from:
- /installation/
- /engine/installation/linux/frugalware/
- /engine/installation/frugalware/
title: Install Docker Engine
title: Install Docker
---
Docker Engine is supported on Linux, Cloud, Windows, and macOS. Installation
instructions are available for the following:
## Docker variants
## On Linux
* [CentOS](linux/centos.md)
* [Debian](linux/debian.md)
* [Fedora](linux/fedora.md)
* [Oracle Linux](linux/oracle.md)
* [Red Hat Enterprise Linux](linux/rhel.md)
* [openSUSE and SUSE Linux Enterprise](linux/suse.md)
* [Ubuntu](linux/ubuntulinux.md)
* [Other Linux distributions](linux/other.md)
Docker is available in multiple variants:
If your linux distribution is not listed above, don't give up yet. To try out
Docker on a different Linux distribution, consider
[installing from binaries](binaries.md).
- **Docker Enterprise Edition (Docker EE)** is designed for enterprise
development and IT teams who build, ship, and run business critical
applications in production at scale. Docker EE is integrated, certified, and
supported to provide enterprises with the most secure container platform in
the industry to modernize all applications. For more information
about Docker EE, including purchasing options, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
## On macOS and Windows
- **Docker Community Edition (Docker CE)** is ideal for developers and small
teams looking to get started with Docker and experimenting with
container-based apps. Docker CE is available on many platforms, from desktop
to cloud to server. Docker CE is available for macOS and Windows and provides
a native experience to help you focus on learning Docker. You can build and
share containers and automate the development pipeline all from a single
environment.
* [Docker for Mac](/docker-for-mac/)
* [Docker for Windows](/docker-for-windows/)
Docker CE gives you the option to run **stable** or **edge** builds.
## On Cloud
- **Stable** builds are released once per quarter.
- **Edge** builds are released once per month.
For more information about Docker CE, see
[Docker Community Edition](https://www.docker.com/community-edition/){: target="_blank" class="_" }.
- **Docker Cloud** is a platform run by Docker which allows you to deploy your
application using multiple cloud providers such as Digital Ocean, Packet,
SoftLink, or to bring your own device. For more information about using Docker
Cloud, see [Docker Cloud](#docker-cloud).
## Platform support matrix
Docker CE and Docker EE run on Linux, Cloud, Windows, and macOS platforms. Use
the following matrix to choose the best installation path for you. The links
under **Platform** take you straight to the installation instructions for that
platform.
{% capture green-check %}![yes](images/green-check.svg){: style="height: 14px"}{% endcapture %}
| Platform | Docker EE | Docker CE |
|:-------------------------------------------------------------------------------------|:-----------------:|:-----------------:|
| [Ubuntu](linux/ubuntulinux.md) | {{ green-check }} | {{ green-check }} |
| [Debian](linux/debian.md) | | {{ green-check }} |
| [Red Hat Enterprise Linux](linux/rhel.md) | {{ green-check }} | |
| [CentOS](linux/centos.md) | {{ green-check }} | {{ green-check }} |
| [Fedora](linux/fedora.md) | | {{ green-check }} |
| [Oracle Linux](linux/oracle.md) | {{ green-check }} | |
| [SUSE Linux Enterprise Server](linux/suse.md) | {{ green-check }} | |
| [Microsoft Windows Server 2016](https://docs.microsoft.com/en-us/virtualization/windowscontainers/quick-start/quick-start-windows-server){: target="_blank" class="_" } | {{ green-check }} | |
| [Microsoft Windows 10](/docker-for-windows/)) | | {{ green-check }} |
| [macOS](/docker-for-mac/) | | {{ green-check }} |
| [Microsoft Azure](/docker-cloud/infrastructure/link-aws.md) | {{ green-check }} | {{ green-check }} |
| [Amazon Web Services](/docker-cloud/infrastructure/link-aws.md) | {{ green-check }} | {{ green-check }} |
{: style="width: 75%" }
See also [Docker Cloud](#on-docker-cloud) for setup instructions for
Digital Ocean, Packet, SoftLink, or Bring Your Own Cloud.
### Prior releases
Instructions for installing prior releases of Docker can be found in the
[Docker archives](/docsarchive/).
## Docker Cloud
You can use Docker Cloud to automatically provision and manage your cloud instances.
@ -48,11 +92,6 @@ up on what Docker for AWS and Docker for Azure have to offer you
* [Docker for AWS](/docker-for-aws/)
* [Docker for Azure](/docker-for-azure/)
## Prior releases
Instructions for installing prior releases of Docker can be found in the
[Docker archives](/docsarchive/).
## Get started
After setting up Docker, try learning the basics over at

View File

@ -12,29 +12,46 @@ To get started with Docker on CentOS, make sure you
## Prerequisites
### Docker EE customers
To install Docker Enterprise Edition (Docker EE), you need to know the Docker EE
repository URL associated with your trial or subscription. To get this information:
- Go to [https://store.docker.com/?overlay=subscriptions](https://store.docker.com/?overlay=subscriptions).
- Choose **Get Details** / **Setup Instructions** within the
**Docker Enterprise Edition for Ubuntu** section.
- Copy the URL from the field labeled
**Copy and paste this URL to download your Edition**.
Where the installation instructions differ for Docker EE and Docker CE, use this
URL when you see the placeholder text `<DOCKER-EE-URL>`.
To learn more about Docker EE, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
### OS requirements
To install Docker, you need the 64-bit version of CentOS 7.
### Remove unofficial Docker packages
Red Hat's operating system repositories contain an older version of Docker, with
the package name `docker` instead of `docker-engine`. If you installed this
version of Docker, remove it using the following command:
### Uninstall old versions
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them, along with associated dependencies.
```bash
$ sudo yum -y remove docker docker-common container-selinux
$ sudo yum remove docker \
docker-common \
container-selinux \
docker-selinux \
docker-engine
```
You may also have to remove the package `docker-selinux` which conflicts with
the official `docker-engine` package. Remove it with the following command:
It's OK if `yum` reports that none of these packages are installed.
```bash
$ sudo yum -y remove docker-selinux
```
The contents of `/var/lib/docker` are not removed, so any images, containers,
or volumes you created using the older version of Docker are preserved.
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker CE package is now called `docker-ce`, and
the Docker EE package is now called `docker-ee`.
## Install Docker
@ -46,21 +63,24 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the RPM package and install it manually and manage
upgrades completely manually.
- Some users cannot use third-party repositories, and must rely on the version
of Docker in the CentOS repositories. This version of Docker may be out of
date. Those users should consult the CentOS documentation and not follow these
procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
Repository set-up instructions are different for [Docker CE](#docker-ce) and
[Docker EE](#docker-ee).
##### Docker CE
{% assign download-url-base = "https://download.docker.com/linux/centos" %}
1. Install `yum-utils`, which provides the `yum-config-manager` utility:
```bash
@ -72,30 +92,51 @@ Docker from the repository.
```bash
$ sudo yum-config-manager \
--add-repo \
https://docs.docker.com/engine/installation/linux/repo_files/centos/docker.repo
{{ download-url-base }}/docker-ce.repo
```
3. **Optional**: Enable the **testing** repository. This repository is included
3. **Optional**: Enable the **edge** repository. This repository is included
in the `docker.repo` file above but is disabled by default. You can enable
it alongside the stable repository. **Do not use unstable repositories on
on production systems or for non-testing workloads.**
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating without specifying a version in the `yum install`
> or `yum update` command will always install the highest possible version,
> which will almost certainly be an unstable one.
it alongside the stable repository.
```bash
$ sudo yum-config-manager --enable docker-testing
$ sudo yum-config-manager --enable docker-ce-edge
```
You can disable the `testing` repository by running the `yum-config-manager`
You can disable the **edge** repository by running the `yum-config-manager`
command with the `--disable` flag. To re-enable it, use the
`--enable` flag. The following command disables the `testing`
repository.
`--enable` flag. The following command disables the **edge** repository.
```bash
$ sudo yum-config-manager --disable docker-testing
$ sudo yum-config-manager --disable docker-ce-edge
```
[Learn about **stable** and **edge** builds](/engine/installation/).
##### Docker EE
1. Remove any existing Docker repositories from `/etc/yum.repos.d/`.
2. Store your Docker EE repository URL in a `yum` variable in `/etc/yum/vars/`.
Replace `<DOCKER-EE-URL>` with the URL you noted down in the
[prerequisites](#prerequisites).
```bash
$ sudo sh -c 'echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl'
```
3. Install `yum-utils`, which provides the `yum-config-manager` utility:
```bash
$ sudo yum install -y yum-utils
```
4. Use the following command to add the **stable** repository:
```bash
$ sudo yum-config-manager \
--add-repo \
<DOCKER-EE-URL>/docker-ee.repo
```
#### Install Docker
@ -108,20 +149,26 @@ Docker from the repository.
If this is the first time you have refreshed the package index since adding
the Docker repositories, you will be prompted to accept the GPG key, and
the key's fingerprint will be shown. Verify that the fingerprint matches
`58118E89F3A912897C070ADBF76221572C52609D` and if so, accept the key.
the key's fingerprint will be shown. Verify that the fingerprint is
correct, and if so, accept the key.
| Docker Edition | Fingerprint |
|----------------|------------------------------------------------------|
| Docker CE | `060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35` |
| Docker EE | `DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96` |
2. Install the latest version of Docker, or go to the next step to install a
specific version.
```bash
$ sudo yum -y install docker-engine
```
| Docker Edition | Command |
|----------------|-------------------------------------|
| Docker CE | `sudo yum install docker-ce` |
| Docker EE | `sudo yum install docker-ee` |
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating Docker without specifying a version in the
> `yum install` or `yum upgrade` command will always install the highest
> available version, which will almost certainly be an unstable one.
> **Warning**: If you have multiple Docker repositories enabled, installing
> or updating without specifying a version in the `yum install` or
> `yum update` command will always install the highest possible version,
> which may not be appropriate for your stability needs.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. List the available versions. This
@ -131,13 +178,12 @@ Docker from the repository.
> **Note**: This `yum list` command only shows binary packages. To show
> source packages as well, omit the `.x86_64` from the package name.
```bash
$ yum list docker-engine.x86_64 --showduplicates |sort -r
{% assign minor-version = "17.03" %}
docker-engine.x86_64 1.13.0-1.el7 docker-main
docker-engine.x86_64 1.12.5-1.el7 docker-main
docker-engine.x86_64 1.12.4-1.el7 docker-main
docker-engine.x86_64 1.12.3-1.el7 docker-main
```bash
$ yum list docker-ce.x86_64 --showduplicates |sort -r
docker-ce.x86_64 {{ minor-version }}.0.el7 docker-ce-stable
```
The contents of the list depend upon which repositories are enabled, and
@ -148,9 +194,10 @@ Docker from the repository.
its stability level. To install a specific version, append the version
string to the package name and separate them by a hyphen (`-`):
```bash
$ sudo yum -y install docker-engine-<VERSION_STRING>
```
| Docker Edition | Command |
|----------------|-----------------------------------------------|
| Docker CE | `sudo yum install docker-ce-<VERSION>` |
| Docker EE | `sudo yum install docker-ee-<VERSION>` |
4. Start Docker.
@ -184,19 +231,27 @@ If you cannot use Docker's repository to install Docker, you can download the
`.rpm` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
1. Go to [https://yum.dockerproject.org/repo/main/centos/](https://yum.dockerproject.org/repo/main/centos/)
and choose the subdirectory for your CentOS version. Download the `.rpm` file
for the Docker version you want to install.
1. This step is different for Docker CE and Docker EE.
> **Note**: To install a testing version, change the word `stable` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
- **Docker CE**: Go to
[{{ download-url-base }}/7/x86_64/stable/Packages/]({{ download-url-base }}/7/x86_64/stable/Packages/)
and download the `.rpm` file for the Docker version you want to install.
> **Note**: To install an **edge** package, change the word
> `stable` in the > URL to `edge`. For information about **stable** and
> **edge** builds, see
> [Docker variants](/engine/installation/#docker-variants).
- **Docker EE**: Go to the Docker EE repository URL associated with your
trial or subscription in your browser. Go to
`7/x86_64/stable-{{ minor-version }}/Packages/` and download the `.rpm`
file for the Docker version you want to install.
2. Install Docker, changing the path below to the path where you downloaded
the Docker package.
```bash
$ sudo yum -y install /path/to/package.rpm
$ sudo yum install /path/to/package.rpm
```
3. Start Docker.
@ -226,14 +281,14 @@ To upgrade Docker, download the newer package file and repeat the
[installation procedure](#install-from-a-package), using `yum -y upgrade`
instead of `yum -y install`, and pointing to the new file.
## Uninstall Docker
1. Uninstall the Docker package:
```bash
$ sudo yum -y remove docker-engine
```
| Docker Edition | Command |
|----------------|--------------------------------|
| Docker CE | `sudo yum remove docker-ce` |
| Docker EE | `sudo yum remove docker-ee` |
2. Images, containers, volumes, or customized configuration files on your host
are not automatically removed. To delete all images, containers, and

View File

@ -1,10 +1,10 @@
---
description: Instructions for installing Docker on Debian
keywords: Docker, Docker documentation, requirements, apt, installation, debian, raspbian, install, uninstall, upgrade, update
keywords: Docker, Docker documentation, requirements, apt, installation, debian, install, uninstall, upgrade, update
redirect_from:
- /engine/installation/debian/
- /engine/installation/linux/raspbian/
title: Get Docker for Debian or Raspbian
title: Get Docker for Debian
---
To get started with Docker on Debian, make sure you
@ -13,6 +13,12 @@ To get started with Docker on Debian, make sure you
## Prerequisites
### Docker EE customers
Docker EE is not supported on Debian. For a list of supported operating systems
and distributions for different Docker editions, see
[Docker variants](/engine/installation/#docker-variants).
### OS requirements
To install Docker, you need the 64-bit version of one of these Debian or
@ -22,7 +28,21 @@ Raspbian versions:
- Jessie 8.0 (LTS) / Raspbian Jessie
- Wheezy 7.7 (LTS)
#### Extra steps for Wheezy 7.7
### Uninstall old versions
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them:
```bash
$ sudo apt-get remove docker docker-engine
```
It's OK if `apt-get` reports that none of these packages are installed.
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker CE package is now called `docker-ce`.
### Extra steps for Wheezy 7.7
- You need at least version 3.10 of the Linux kernel. Debian Wheezy ships with
version 3.2, so you may need to
@ -36,9 +56,9 @@ Raspbian versions:
- Enable the `backports` repository. See the
[Debian documentation](https://backports.debian.org/Instructions/){: target="_blank" class"_"}.
## Install Docker
## Install Docker CE
You can install Docker in different ways, depending on your needs:
You can install Docker CE in different ways, depending on your needs:
- Most users
[set up Docker's repositories](#install-using-the-repository) and install
@ -46,27 +66,25 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the DEB package and install it manually and manage
upgrades completely manually.
- Some users cannot use the official Docker repositories, and must rely on
the version of Docker that comes with their operating system. This version of
Docker may be out of date. Those users should consult their operating system
documentation and not follow these procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
Before you install Docker CE for the first time on a new host machine, you need
to set up the Docker repository. Afterward, you can install and update Docker
from the repository.
#### Set up the repository
{% assign download-url-base = "https://download.docker.com/linux/debian" %}
1. Install packages to allow `apt` to use a repository over HTTPS:
**Jessie or Stretch**:
```bash
$ sudo apt-get install -y --no-install-recommends \
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
@ -76,7 +94,7 @@ Docker from the repository.
**Wheezy**:
```bash
$ sudo apt-get install -y --no-install-recommends \
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
@ -86,47 +104,38 @@ Docker from the repository.
2. Add Docker's official GPG key:
```bash
$ curl -fsSL https://apt.dockerproject.org/gpg | sudo apt-key add -
$ curl -fsSL {{ download-url-base}}/gpg | sudo apt-key add -
```
Verify that the key ID is `58118E89F3A912897C070ADBF76221572C52609D`.
Verify that the key ID is `9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88`.
```bash
$ apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/2C52609D 2015-07-14
Key fingerprint = 5811 8E89 F3A9 1289 7C07 0ADB F762 2157 2C52 609D
uid Docker Release Tool (releasedocker) <docker@docker.com>
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
```
3. Use the following command to set up the **stable** repository.
To add the **edge** repository, add `edge` after `stable` on the last line of
the command. For information about **stable** and **edge** builds, see
[Docker variants](/engine/installation/#docker-variants).
> **Note**: The `lsb_release -cs` sub-command below returns the name of your
> Debian distribution, such as `jessie`.
- **Debian**:
```bash
$ sudo add-apt-repository \
"deb https://apt.dockerproject.org/repo/ \
debian-$(lsb_release -cs) \
main"
"deb [arch=amd64] {{ download-url-base }} \
$(lsb_release -cs) \
stable"
```
- **Raspbian**:
```bash
$ sudo add-apt-repository \
"deb https://apt.dockerproject.org/repo/ \
raspbian-$(lsb_release -cs) \
main"
```
To enable the `testing` repository, you can edit `/etc/apt/sources.list`
and add the word `testing` after `main` on the appropriate line of the file.
**Do not use unstable repositories on production systems or for non-testing workloads.**
#### Install Docker
#### Install Docker CE
1. Update the `apt` package index.
@ -140,24 +149,22 @@ Docker from the repository.
Use this command to install the latest version of Docker:
```bash
$ sudo apt-get -y install docker-engine
$ sudo apt-get install docker-ce
```
> **Warning**: If you have both stable and unstable repositories enabled,
> updating to the latest version of Docker by not specifying a version in
> the `apt-get install` or `apt-get update` command will always install the
> highest possible version, which will almost certainly be an unstable one.
> **Warning**: If you have multiple Docker repositories enabled, installing
> or updating without specifying a version in the `apt-get install` or
> `apt-get update` command will always install the highest possible version,
> which may not be appropriate for your stability needs.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. This output is truncated. List the
available versions:
```bash
$ apt-cache madison docker-engine
docker-engine | 1.13.0-0~stretch | https://apt.dockerproject.org/repo debian-stretch/main amd64 Packages
docker-engine | 1.12.3-0~stretch | https://apt.dockerproject.org/repo debian-stretch/main amd64 Packages
docker-engine | 1.12.2-0~stretch | https://apt.dockerproject.org/repo debian-stretch/main amd64 Packages
docker-engine | 1.12.1-0~stretch | https://apt.dockerproject.org/repo debian-stretch/main amd64 Packages
$ apt-cache madison docker-ce
docker-ce | 17.03.0~ce-0~debian-jessie | {{ download-url-base}} jessie/stable amd64 Packages
```
The contents of the list depend upon which repositories are enabled,
@ -169,16 +176,12 @@ Docker from the repository.
version string to the package name and separate them by an equals sign (`=`):
```bash
$ sudo apt-get -y install docker-engine=<VERSION_STRING>
$ sudo apt-get install docker-ce=<VERSION_STRING>
```
On Debian, the Docker daemon starts automatically. On Raspbian, start Docker:
The Docker daemon starts automatically.
```bash
$ sudo service docker start
```
4. Verify that `docker` is installed correctly by running the `hello-world`
4. Verify that Docker CE is installed correctly by running the `hello-world`
image.
```bash
@ -188,12 +191,12 @@ Docker from the repository.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Linux postinstall](linux-postinstall.md) to allow
Docker CE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Linux postinstall](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
#### Upgrade Docker
#### Upgrade Docker CE
To upgrade Docker, first run `sudo apt-get update`, then follow the
[installation instructions](#install-docker), choosing the new version you want
@ -201,32 +204,27 @@ to install.
### Install from a package
If you cannot use Docker's repository to install Docker, you can download the
If you cannot use Docker's repository to install Docker CE, you can download the
`.deb` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
1. Go to [https://apt.dockerproject.org/repo/pool/main/d/docker-engine/](https://apt.dockerproject.org/repo/pool/main/d/docker-engine/)
1. Go to [{{ download-url-base }}/pool/stable/amd64/]({{ download-url-base }}/pool/stable/amd64/)
and download the `.deb` file for the Docker version you want to install and
for your version of Debian or Raspbian.
for your version of Debian.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
> **Note**: To install an **edge** package, change the word
> `stable` in the > URL to `edge`.
2. Install Docker, changing the path below to the path where you downloaded
2. Install Docker CE, changing the path below to the path where you downloaded
the Docker package.
```bash
$ sudo dpkg -i /path/to/package.deb
```
On Debian, the Docker daemon starts automatically. On Raspbian, start Docker:
The Docker daemon starts automatically.
```bash
$ sudo service docker start
```
3. Verify that `docker` is installed correctly by running the `hello-world`
3. Verify that Docker CE is installed correctly by running the `hello-world`
image.
```bash
@ -236,10 +234,10 @@ a new file each time you want to upgrade Docker.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Post-installation steps for Linux](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
Docker CE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Post-installation steps for Linux](linux-postinstall.md)
to allow non-privileged users to run Docker commands and for other optional
configuration steps.
#### Upgrade Docker
@ -251,7 +249,7 @@ To upgrade Docker, download the newer package file and repeat the
1. Uninstall the Docker package:
```bash
$ sudo apt-get purge docker-engine
$ sudo apt-get purge docker-ce
```
2. Images, containers, volumes, or customized configuration files on your host

View File

@ -12,6 +12,12 @@ To get started with Docker on Fedora, make sure you
## Prerequisites
### Docker EE customers
Docker EE is not supported on Fedora. For a list of supported operating systems
and distributions for different Docker editions, see
[Docker variants](/engine/installation/#docker-variants).
### OS requirements
To install Docker, you need the 64-bit version of one of these Fedora versions:
@ -19,29 +25,27 @@ To install Docker, you need the 64-bit version of one of these Fedora versions:
- 24
- 25
### Remove unofficial Docker packages
### Uninstall old versions
Fedora's operating system repositories contain an older version of Docker, with
the package name `docker` instead of `docker-engine`. If you installed this version
of Docker, remove it using the following command:
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them, along with associated dependencies.
```bash
$ sudo dnf -y remove docker docker-common container-selinux
$ sudo dnf remove docker \
docker-common \
container-selinux \
docker-selinux \
docker-engine
```
You may also have to remove the package `docker-selinux` which conflicts with the
official `docker-engine` package. Remove it with the following command:
It's OK if `dnf` reports that none of these packages are installed.
```bash
$ sudo dnf -y remove docker-selinux
```
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker CE package is now called `docker-ce`.
The contents of `/var/lib/docker` are not removed, so any images, containers,
or volumes you created using the older version of Docker are preserved.
## Install Docker CE
## Install Docker
You can install Docker in different ways, depending on your needs:
You can install Docker CE in different ways, depending on your needs:
- Most users
[set up Docker's repositories](#install-using-the-repository) and install
@ -49,21 +53,19 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the RPM package and install it manually and manage
upgrades completely manually.
- Some users cannot use third-party repositories, and must rely on the version
of Docker in the Fedora repositories. This version of Docker may be out of
date. Those users should consult the Fedora documentation and not follow these
procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
{% assign download-url-base = "https://download.docker.com/linux/fedora" %}
1. Install the `dnf-plugins-core` package which provides the commands to manage
your DNF repositories from the command line.
@ -76,33 +78,29 @@ Docker from the repository.
```bash
$ sudo dnf config-manager \
--add-repo \
https://docs.docker.com/engine/installation/linux/repo_files/fedora/docker.repo
{{ download-url-base }}/docker-ce.repo
```
3. **Optional**: Enable the **testing** repository. This repository is included
3. **Optional**: Enable the **edge** repository. This repository is included
in the `docker.repo` file above but is disabled by default. You can enable
it alongside the stable repository. **Do not use unstable repositories on
on production systems or for non-testing workloads.**
it alongside the stable repository. For information about **stable** and
**edge** builds, see
[Docker variants](/engine/installation/#docker-variants).
> **Warning**: If you have both stable and unstable repositories enabled,
> updating without specifying a version in the `dnf install` or `dnf update`
> command will always install the highest possible version, which will
> almost certainly be an unstable one.
```bash
$ sudo dnf config-manager --set-enabled docker-testing
$ sudo dnf config-manager --enable docker-ce-edge
```
You can disable the `testing` repository by running the `dnf config-manager`
command with the `--set-disabled` flag. To re-enable it, use the
`--set-enabled` flag The following command disables the `testing`
repository.
You can disable the **edge** repository by running the `dnf config-manager`
command with the `--disable` flag. To re-enable it, use the
`--enable` flag. The following command disables the **edge** repository.
```bash
$ sudo dnf config-manager --set-disabled docker-testing
$ sudo dnf config-manager --disable docker-ce-edge
```
#### Install Docker
#### Install Docker CE
1. Update the `dnf` package index.
@ -113,35 +111,33 @@ Docker from the repository.
If this is the first time you have refreshed the package index since adding
the Docker repositories, you will be prompted to accept the GPG key, and
the key's fingerprint will be shown. Verify that the fingerprint matches
`58118E89F3A912897C070ADBF76221572C52609D` and if so, accept the key.
`060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35` and if so, accept the
key.
2. Install the latest version of Docker, or go to the next step to install a
specific version.
```bash
$ sudo dnf -y install docker-engine
$ sudo dnf install docker-ce
```
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating without specifying a version in the `dnf install`
> or `dnf update` command will always install the highest possible version,
> which will almost certainly be an unstable one.
> **Warning**: If you have multiple Docker repositories enabled, installing
> or updating without specifying a version in the `dnf install` or
> `dnf update` command will always install the highest possible version,
> which may not be appropriate for your stability needs.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. List the available versions.
This example uses the `sort -r` command to sort the results by version
number, highest to lowest, and is truncated.
instead of always using the latest. List the available versions. This
example uses the `sort -r` command to sort the results by version number,
highest to lowest, and is truncated.
> **Note**: This `dnf list` command only shows binary packages. To show
> **Note**: This `yum list` command only shows binary packages. To show
> source packages as well, omit the `.x86_64` from the package name.
```bash
$ dnf list docker-engine.x86_64 --showduplicates |sort -r
$ dnf list docker-ce.x86_64 --showduplicates |sort -r
docker-engine.x86_64 1.13.0-1.fc24 docker-main
docker-engine.x86_64 1.12.5-1.fc24 docker-main
docker-engine.x86_64 1.12.4-1.fc24 docker-main
docker-engine.x86_64 1.12.3-1.fc24 docker-main
docker-ce.x86_64 17.03.0.fc24 docker-ce-stable
```
The contents of the list depend upon which repositories are enabled, and
@ -153,7 +149,7 @@ Docker from the repository.
string to the package name and separate them by a hyphen (`-`):
```bash
$ sudo dnf -y install docker-engine-<VERSION_STRING>
$ sudo dnf -y install docker-ce-<VERSION>
```
4. Start Docker.
@ -162,7 +158,7 @@ Docker from the repository.
$ sudo systemctl start docker
```
5. Verify that `docker` is installed correctly by running the `hello-world`
5. Verify that Docker CE is installed correctly by running the `hello-world`
image.
```bash
@ -176,7 +172,7 @@ Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Linux postinstall](linux-postinstall.md) to allow non-privileged
users to run Docker commands and for other optional configuration steps.
#### Upgrade Docker
#### Upgrade Docker CE
To upgrade Docker, first run `sudo dnf makecache fast`, then follow the
[installation instructions](#install-docker), choosing the new version you want
@ -188,13 +184,11 @@ If you cannot use Docker's repository to install Docker, you can download the
`.rpm` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
1. Go to [https://yum.dockerproject.org/repo/main/fedora/](https://yum.dockerproject.org/repo/main/fedora/)
and choose the subdirectory for your Fedora version. Download the `.rpm`
file for the Docker version you want to install.
1. Go to [{{ download-url-base }}/7/x86_64/stable/]({{ download-url-base }}/7/x86_64/stable/)
and download the `.rpm` file for the Docker version you want to install.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
> **Note**: To install an **edge** package, change the word
> `stable` in the > URL to `edge`.
2. Install Docker, changing the path below to the path where you downloaded
the Docker package.
@ -209,7 +203,7 @@ a new file each time you want to upgrade Docker.
$ sudo systemctl start docker
```
4. Verify that `docker` is installed correctly by running the `hello-world`
4. Verify that Docker CE is installed correctly by running the `hello-world`
image.
```bash
@ -219,7 +213,7 @@ a new file each time you want to upgrade Docker.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Docker CE is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Post-installation steps for Linux](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
@ -230,13 +224,12 @@ To upgrade Docker, download the newer package file and repeat the
[installation procedure](#install-from-a-package), using `dnf -y upgrade`
instead of `dnf -y install`, and pointing to the new file.
## Uninstall Docker
1. Uninstall the Docker package:
```bash
$ sudo dnf -y remove docker-engine
$ sudo dnf remove docker-ce
```
2. Images, containers, volumes, or customized configuration files on your host

View File

@ -51,8 +51,7 @@ To create the `docker` group and add your user:
Most current Linux distributions (RHEL, CentOS, Fedora, Ubuntu 16.04 and higher)
use [`systemd`](#systemd) to manage which services start when the system boots.
Ubuntu 14.10 and below use [`upstart`](#upstart). Oracle Linux 6 uses
`chkconfig`.
Ubuntu 14.10 and below use [`upstart`](#upstart).
### `systemd`

View File

@ -12,118 +12,96 @@ To get started with Docker on Oracle Linux, make sure you
## Prerequisites
### Docker EE repository URL
To install Docker Enterprise Edition (Docker EE), you need to know the Docker EE
repository URL associated with your trial or subscription. To get this information:
- Go to [https://store.docker.com/?overlay=subscriptions](https://store.docker.com/?overlay=subscriptions).
- Choose **Get Details** / **Setup Instructions** within the
**Docker Enterprise Edition for Oracle Linux** section.
- Copy the URL from the field labeled
**Copy and paste this URL to download your Edition**.
Use this URL when you see the placeholder text `<DOCKER-EE-URL>`.
To learn more about Docker EE, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
Docker Community Edition (Docker CE) is not supported on Oracle Linux.
### OS requirements
To install Docker, you need the 64-bit version of Oracle Linux 6 or 7 running the
To install Docker, you need the 64-bit version of Oracle Linux 7 running the
Unbreakable Enterprise Kernel Release 4 (4.1.12) or higher.
For Oracle Linux 6, you need to enable extra repositories to install UEK4. See
[Obtaining and installing the UEK packages](https://docs.oracle.com/cd/E37670_01/E37355/html/ol_obtain_uek.html){: target="_blank" class="_" }.
The [OverlayFS2 storage driver](https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/) is only supported
when running the UEK4.
### Remove unofficial Docker packages
### Uninstall old versions
Oracle's repositories used to contain an older version of Docker with the package name
`docker` instead of `docker-engine`. If you still have this version of Docker installed,
remove it using the following command:
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them, along with associated dependencies.
```bash
$ sudo yum -y remove docker
$ sudo yum remove docker \
docker-common \
container-selinux \
docker-selinux \
docker-engine
```
Oracle's repositories also contain the Oracle-supported version of Docker which uses
the same `docker-engine` name as the official Docker package. If you have installed this
version of Docker, it will automatically be upgraded by the official version.
It's OK if `yum` reports that none of these packages are installed.
You may also have to remove the package `docker-engine-selinux` which conflicts with
the official `docker-engine` package. Remove it with the following command:
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker EE package is now called `docker-ee`.
```bash
$ sudo yum -y remove docker-engine-selinux
```
This package has already been deprecated by Oracle so will only exist on systems that have
an older version of the Oracle-supported package installed.
The contents of `/var/lib/docker` are not removed, so any images, containers,
or volumes you created using the older version of Docker are preserved.
## Install Docker
## Install Docker EE
You can install Docker in different ways, depending on your needs:
- Users who do not require Docker support from Oracle can
[set up the official Docker repositories](#install-using-the-repository) and
install from them, for ease of installation and upgrade tasks. This is the
- Most users
[set up Docker's repositories](#install-using-the-repository) and install
from them, for ease of installation and upgrade tasks. This is the
recommended approach.
- Some users download the RPM package and install it manually and manage
upgrades completely manually.
- Some users cannot use third-party repositories or who wish to receive Docker support
from Oracle must rely on the version of Docker in the Oracle repositories.
This version of Docker may be out of date. Those users should consult the Oracle
Linux Docker User's Guide and not follow these procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
1. Install the `yum-utils` plugin, which provides the `yum-config-manager`
plugin.
1. Remove any existing Docker repositories from `/etc/yum.repos.d/`.
2. Store your EE repository URL in `/etc/yum/vars/dockerurl`. Replace
`<DOCKER-EE-URL>` with the URL you noted down in the
[prerequisites](#prerequisites).
```bash
$ sudo sh -c 'echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl'
```
3. Install `yum-utils`, which provides the `yum-config-manager` utility:
```bash
$ sudo yum install -y yum-utils
```
2. Use one of the following commands to set up the **stable** repository,
depending on your version of Oracle Linux:
**Oracle Linux 7**:
4. Use the following command to add the **stable** repository:
```bash
$ sudo yum-config-manager \
--add-repo \
https://docs.docker.com/engine/installation/linux/repo_files/oracle/docker-ol7.repo
<DOCKER-EE-URL>/docker-ee.repo
```
**Oracle Linux 6**:
```bash
$ sudo yum-config-manager \
--add-repo \
https://docs.docker.com/engine/installation/linux/repo_files/oracle/docker-ol6.repo
```
3. **Optional**: Enable the **testing** repository. This repository is included
in the `docker.repo` file above but is disabled by default. You can enable
it alongside the stable repository. **Do not use unstable repositories on
on production systems or for non-testing workloads.**
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating without specifying a version in the `yum install`
> or `yum update` command will always install the highest possible version,
> which will almost certainly be an unstable one.
```bash
$ sudo yum-config-manager --enablerepo docker-testing
```
You can disable the `testing` repository by running the `yum-config-manager`
command with the `--disablerepo` flag. To re-enable it, use the
`--set-enabled` flag. The following command disables the `testing`
repository.
```bash
$ sudo yum-config-manager --disablerepo docker-testing
```
#### Install Docker
#### Install Docker EE
1. Update the `yum` package index.
@ -131,35 +109,19 @@ Docker from the repository.
$ sudo yum makecache fast
```
2. Install the latest version of Docker, or go to the next step to install a
If this is the first time you have refreshed the package index since adding
the Docker repositories, you will be prompted to accept the GPG key, and
the key's fingerprint will be shown. Verify that the fingerprint matches
`77FE DA13 1A83 1D29 A418 D3E8 99E5 FF2E 7668 2BC9` and if so, accept the
key.
2. Install the latest version of Docker EE, or go to the next step to install a
specific version.
```bash
$ sudo yum -y install docker-engine
$ sudo yum -y install docker-ee
```
If this is the first time you are installing a package from
the Docker repositories, the GPG key and fingerprint will be shown and
automatically accepted.
If you do not want to automatically accept the GPG key, remove the `-y`
parameter so that yum prompts you to accept the GPG manually.
Ensure the GPG details match the following:
```none
Retrieving key from https://yum.dockerproject.org/gpg
Importing GPG key 0x2C52609D:
Userid : "Docker Release Tool (releasedocker) <docker@docker.com>"
Fingerprint: 5811 8e89 f3a9 1289 7c07 0adb f762 2157 2c52 609d
From : https://yum.dockerproject.org/gpg
```
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating Docker without specifying a version in the
> `yum install` or `yum upgrade` command will always install the highest
> available version, which will almost certainly be an unstable one.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. List the available versions.
This example uses the `sort -r` command to sort the results by version
@ -168,50 +130,31 @@ Docker from the repository.
> **Note**: This `yum list` command only shows binary packages. To show
> source packages as well, omit the `.x86_64` from the package name.
```bash
$ yum list docker-engine.x86_64 --showduplicates |sort -nr
{% assign minor-version = "17.03" %}
docker-engine.x86_64 1.13.0-1.el6 docker-main
docker-engine.x86_64 1.12.3-1.el6 docker-main
docker-engine.x86_64 1.12.2-1.el6 docker-main
docker-engine.x86_64 1.12.1-1.el6 docker-main
```bash
$ yum list docker-ee.x86_64 --showduplicates |sort -r
docker-ee.x86_64 {{ minor-version }}.0.el7 docker-ee-stable
```
The contents of the list depend upon which repositories you have enabled,
and will be specific to your version of Oracle Linux (indicated by the
`.el7` suffix on the version, in this example). Choose a specific version to
install. The second column is the version string.
The contents of the list depend upon which repositories you have enabled.
Choose a specific version to install. The second column is the version string.
The third column is the repository name, which indicates which repository the
package is from and by extension extension its stability level. Oracle ships
the `docker-engine` in its addon repository so you may also see that repository
in this column if you have it enabled.
To install a specific version, append the version string to the package name
and separate them by a hyphen
(`-`):
package is from and by extension extension its stability level. To install a
specific version, append the version string to the package name and separate
them by a hyphen (`-`):
```bash
$ sudo yum -y install docker-engine-<VERSION_STRING>
$ sudo yum -y install docker-ee-<VERSION_STRING>
```
The Docker daemon does not start automatically.
4. Start the Docker daemon. Use `systemctl` on Oracle Linux 7 or `service` on
Oracle Linux 6.
**Oracle Linux 7**:
4. Start the Docker daemon.
```bash
$ sudo systemctl start docker
```
**Oracle Linux 6**:
```bash
$ sudo service docker start
```
5. Verify that `docker` is installed correctly by running the `hello-world`
image.
@ -222,56 +165,42 @@ Docker from the repository.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Linux postinstall](linux-postinstall.md) to allow non-privileged
users to run Docker commands and for other optional configuration steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Linux postinstall](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, either run `sudo yum update docker-engine` to upgrade to the latest available
version or if you would prefer to upgrade to a specific version, first run
`sudo yum makecache fast`, then follow the [installation instructions](#install-docker),
choosing the new version you want to install.
To upgrade Docker EE, first run `sudo yum makecache fast`, then follow the
[installation instructions](#install-docker), choosing the new version you want
to install.
### Install from a package
If you cannot use Docker's repository to install Docker, you can download the
`.rpm` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
If you cannot use the official Docker repository to install Docker, you can
download the `.rpm` file for your release and install it manually. You will
need to download a new file each time you want to upgrade Docker.
1. Go to [https://yum.dockerproject.org/repo/main/oraclelinux/](https://yum.dockerproject.org/repo/main/oraclelinux/)
and choose the subdirectory for your Oracle Linux version. Download the
`.rpm` file for the Docker version you want to install.
1. Go to the Docker EE repository URL associated with your
trial or subscription in your browser. Browse to
`7/x86_64/stable-{{ minor-version }}/Packages` and download the `.rpm` file
for the Docker version you want to install.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
2. Install Docker, changing the path below to the path where you downloaded
2. Install Docker EE, changing the path below to the path where you downloaded
the Docker package.
```bash
$ sudo yum install /path/to/package.rpm
```
The Docker daemon does not start automatically.
4. Start the Docker daemon. Use `systemctl` on Oracle Linux 7 or `service` on
Oracle Linux 6.
**Oracle Linux 7**:
3. Start the Docker daemon.
```bash
$ sudo systemctl start docker
```
**Oracle Linux 6**:
```bash
$ sudo service docker start
```
5. Verify that `docker` is installed correctly by running the `hello-world`
4. Verify that Docker EE is installed correctly by running the `hello-world`
image.
```bash
@ -281,23 +210,23 @@ a new file each time you want to upgrade Docker.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Post-installation steps for Linux](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Post-installation steps for Linux](linux-postinstall.md)
to allow non-privileged users to run Docker commands and for other optional
configuration steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, download the newer package file and repeat the
To upgrade Docker EE, download the newer package file and repeat the
[installation procedure](#install-from-a-package), using `yum -y upgrade`
instead of `yum -y install`, and pointing to the new file.
## Uninstall Docker
## Uninstall Docker EE
1. Uninstall the Docker package:
1. Uninstall the Docker EE package:
```bash
$ sudo yum remove docker-engine
$ sudo yum remove docker-ee
```
2. Images, containers, volumes, or customized configuration files on your host

View File

@ -1,27 +0,0 @@
[docker-main]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-testing]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/testing/centos/$releasever/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-beta]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/beta/centos/7/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-nightly]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/nightly/centos/7/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

View File

@ -1,27 +0,0 @@
[docker-main]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/fedora/$releasever/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-testing]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/testing/fedora/$releasever/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-beta]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/beta/fedora/$releasever/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-nightly]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/nightly/fedora/$releasever/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

View File

@ -1,27 +0,0 @@
[docker-main]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/oraclelinux/6/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-testing]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/testing/oraclelinux/6/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-beta]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/beta/oraclelinux/6/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-nightly]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/nightly/oraclelinux/6/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

View File

@ -1,27 +0,0 @@
[docker-main]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/main/oraclelinux/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-testing]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/testing/oraclelinux/7/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-beta]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/beta/oraclelinux/7/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg
[docker-nightly]
name=Docker Repository
baseurl=https://yum.dockerproject.org/repo/nightly/oraclelinux/7/
enabled=0
gpgcheck=1
gpgkey=https://yum.dockerproject.org/gpg

View File

@ -13,31 +13,48 @@ To get started with Docker on Red Hat Enterprise Linux (RHEL), make sure you
## Prerequisites
### Docker EE repository URL
To install Docker Enterprise Edition (Docker EE), you need to know the Docker EE
repository URL associated with your trial or subscription. To get this information:
- Go to [https://store.docker.com/?overlay=subscriptions](https://store.docker.com/?overlay=subscriptions).
- Choose **Get Details** / **Setup Instructions** within the
**Docker Enterprise Edition for Red Hat Enterprise Linux** section.
- Copy the URL from the field labeled
**Copy and paste this URL to download your Edition**.
Use this URL when you see the placeholder text `<DOCKER-EE-URL>`.
To learn more about Docker EE, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
Docker Community Edition (Docker CE) is not supported on Red Hat Enterprise
Linux.
### OS requirements
To install Docker, you need the 64-bit version of RHEL 7.
### Remove unofficial Docker packages
### Uninstall old versions
Red Hat's operating system repositories contain an older version of Docker, with
the package name `docker` instead of `docker-engine`. If you installed this
version of Docker, remove it using the following command:
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them, along with associated dependencies.
```bash
$ sudo yum -y remove docker docker-common container-selinux
$ sudo yum remove docker \
docker-common \
container-selinux \
docker-selinux \
docker-engine
```
You may also have to remove the package `docker-selinux` which conflicts with
the official `docker-engine` package. Remove it with the following command:
It's OK if `yum` reports that none of these packages are installed.
```bash
$ sudo yum -y remove docker-selinux
```
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker EE package is now called `docker-ee`.
The contents of `/var/lib/docker` are not removed, so any images, containers,
or volumes you created using the older version of Docker are preserved.
## Install Docker
## Install Docker EE
You can install Docker in different ways, depending on your needs:
@ -47,58 +64,55 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the RPM package and install it manually and manage
upgrades completely manually.
- Some users cannot use third-party repositories, and must rely on
the version of Docker in the Red Hat repositories. This version of Docker may
be out of date. Those users should consult the Red Hat documentation and not
follow these procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
1. Install `yum-utils`, which provides the `yum-config-manager` utility:
1. Remove any existing Docker repositories from `/etc/yum.repos.d/`.
2. Store two `yum` variables in `/etc/yum/vars/`.
- Store your EE repository URL in `/etc/yum/vars/dockerurl`. Replace
`<DOCKER-EE-URL>` with the URL you noted down in the
[prerequisites](#prerequisites).
```bash
$ sudo sh -c 'echo "<DOCKER-EE-URL>" > /etc/yum/vars/dockerurl'
```
- Store your RHEL version string in `/etc/yum/vars/dockerosversion`.
Use the appropriate value from the following table. Most users should use
`7`.
| Version string | Description |
|----------------|-------------|
| `7` | Unless you have specific requirements, you should use this version. Dependencies are not locked to specific versions but use the latest available version. |
| `7.3` | Dependencies are locked to specific packages for RHEL 7.3. |
| `7.2` | Dependencies are locked to specific packages for RHEL 7.2. |
```bash
$ sudo sh -c 'echo "<VERSION-STRING>" > /etc/yum/vars/dockerosversion'
```
3. Install `yum-utils`, which provides the `yum-config-manager` utility:
```bash
$ sudo yum install -y yum-utils
```
2. Use the following command to set up the **stable** repository:
4. Use the following command to add the **stable** repository:
```bash
$ sudo yum-config-manager \
--add-repo \
https://docs.docker.com/engine/installation/linux/repo_files/centos/docker.repo
```
> **Note**: The link above is correct for RHEL as well as CentOS.
3. **Optional**: Enable the **testing** repository. This repository is included
in the `docker.repo` file above but is disabled by default. You can enable
it alongside the stable repository. **Do not use unstable repositories on
on production systems or for non-testing workloads.**
> **Warning**: If you have both stable and unstable repositories enabled,
> updating without specifying a version in the `yum install` or `yum update`
> command will always install the highest possible version, which will
> almost certainly be an unstable one.
```bash
$ sudo yum-config-manager --set-enabled docker-testing
```
You can disable the `testing` repository by running the `yum-config-manager`
command with the `--set-disabled` flag. To re-enable it, use the
`--set-enabled` flag. The following command disables the `testing`
repository.
```bash
$ sudo yum-config-manager --set-disabled docker-testing
<DOCKER-EE-URL>/docker-ee.repo
```
#### Install Docker
@ -112,20 +126,16 @@ Docker from the repository.
If this is the first time you have refreshed the package index since adding
the Docker repositories, you will be prompted to accept the GPG key, and
the key's fingerprint will be shown. Verify that the fingerprint matches
`58118E89F3A912897C070ADBF76221572C52609D` and if so, accept the key.
`DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96` and if so, accept the
key.
2. Install the latest version of Docker, or go to the next step to install a
2. Install the latest version of Docker EE, or go to the next step to install a
specific version.
```bash
$ sudo yum -y install docker-engine
$ sudo yum -y install docker-ee
```
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating without specifying a version in the `yum install`
> or `yum update` command will always install the highest possible version,
> which will almost certainly be an unstable one.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. List the available versions.
This example uses the `sort -r` command to sort the results by version
@ -134,13 +144,12 @@ Docker from the repository.
> **Note**: This `yum list` command only shows binary packages. To show
> source packages as well, omit the `.x86_64` from the package name.
```bash
$ yum list docker-engine.x86_64 --showduplicates |sort -r
{% assign minor-version = "17.03" %}
docker-engine.x86_64 1.13.0-1.el7 docker-main
docker-engine.x86_64 1.12.5-1.el7 docker-main
docker-engine.x86_64 1.12.4-1.el7 docker-main
docker-engine.x86_64 1.12.3-1.el7 docker-main
```bash
$ yum list docker-ee.x86_64 --showduplicates |sort -r
docker-ee.x86_64 {{ minor-version }}.0.el7 docker-ee-stable
```
The contents of the list depend upon which repositories you have enabled,
@ -152,7 +161,7 @@ Docker from the repository.
version string to the package name and separate them by a hyphen (`-`):
```bash
$ sudo yum -y install docker-engine-<VERSION_STRING>
$ sudo yum -y install docker-ee-<VERSION_STRING>
```
4. Start Docker.
@ -161,7 +170,7 @@ Docker from the repository.
$ sudo systemctl start docker
```
5. Verify that `docker` is installed correctly by running the `hello-world`
5. Verify that Docker EE is installed correctly by running the `hello-world`
image.
```bash
@ -171,13 +180,14 @@ Docker from the repository.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Linux postinstall](linux-postinstall.md) to allow non-privileged
users to run Docker commands and for other optional configuration steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Linux postinstall](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, first run `sudo yum makecache fast`, then follow the
To upgrade Docker EE, first run `sudo yum makecache fast`, then follow the
[installation instructions](#install-docker), choosing the new version you want
to install.
@ -187,16 +197,16 @@ If you cannot use the official Docker repository to install Docker, you can
download the `.rpm` file for your release and install it manually. You will
need to download a new file each time you want to upgrade Docker.
1. Go to [https://yum.dockerproject.org/repo/main/centos/](https://yum.dockerproject.org/repo/main/centos/)
and choose the subdirectory for your RHEL version. The above URL is correct
for RHEL as well as CentOS. Download the `.rpm` file for the Docker version
you want to install.
1. Go to the Docker EE repository URL associated with your
trial or subscription in your browser. Go to
`7/x86_64/stable-{{ minor-version }}/Packages` and download the `.rpm` file
for the Docker version you want to install.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
> **Note**: If you have trouble with `selinux` using the packages under the
> `7` directory, try choosing the version-specific directory instead, such
> as `7.3`.
2. Install Docker, changing the path below to the path where you downloaded
2. Install Docker EE, changing the path below to the path where you downloaded
the Docker package.
```bash
@ -219,24 +229,24 @@ need to download a new file each time you want to upgrade Docker.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Post-installation steps for Linux](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Post-installation steps for Linux](linux-postinstall.md)
to allow non-privileged users to run Docker commands and for other optional
configuration steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, download the newer package file and repeat the
To upgrade Docker EE, download the newer package file and repeat the
[installation procedure](#install-from-a-package), using `yum -y upgrade`
instead of `yum -y install`, and pointing to the new file.
## Uninstall Docker
## Uninstall Docker EE
1. Uninstall the Docker package:
1. Uninstall the Docker EE package:
```bash
$ sudo yum -y remove docker-engine
$ sudo yum -y remove docker-ee
```
2. Images, containers, volumes, or customized configuration files on your host

View File

@ -4,35 +4,57 @@ keywords: Docker, Docker documentation, requirements, apt, installation, suse, o
redirect_from:
- /engine/installation/SUSE/
- /engine/installation/linux/SUSE/
title: Get Docker for OpenSUSE and SLES
title: Get Docker for and SLES
---
To get started with Docker on OpenSUSE or SLES, make sure you
To get started with Docker on SUSE Linux Enterprise Server (SLES), make sure you
[meet the prerequisites](#prerequisites), then
[install Docker](#install-docker).
## Prerequisites
### Docker EE URL
To install Docker Enterprise Edition (Docker EE), you need to know the Docker EE
repository URL associated with your trial or subscription. To get this information:
- Go to [https://store.docker.com/?overlay=subscriptions](https://store.docker.com/?overlay=subscriptions).
- Choose **Get Details** / **Setup Instructions** within the
**Docker Enterprise Edition for SUSE Linux Enterprise Server** section.
- Copy the URL from the field labeled
**Copy and paste this URL to download your Edition**.
Use this URL when you see the placeholder text `<DOCKER-EE-URL>`.
To learn more about Docker EE, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
Docker Community Edition (Docker CE) is not supported on SLES.
### OS requirements
To install Docker, you need the 64-bit version one of the following:
To install Docker, you need the 64-bit version of SLES 12.x.
- OpenSuSE Leap 42.x
- SLES 12.x
### Uninstall old versions
### Remove unofficial Docker packages
OpenSUSE's operating system repositories contain an older version of Docker,
with the package name `docker` instead of `docker-engine`. If you installed this
version of Docker on OpenSUSE or on SLES by using the OpenSUSE repositories,
remove it using the following command:
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them, along with associated dependencies.
```bash
$ sudo zypper rm docker
$ sudo zypper rm docker docker-engine
```
The contents of `/var/lib/docker` are not removed, so any images, containers,
or volumes you created using the older version of Docker are preserved.
If removal of the `docker-engine` package fails, use the following command
instead:
```bash
$ sudo rpm -e docker-engine
```
It's OK if `zypper` reports that none of these packages are installed.
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker EE package is now called `docker-ee`.
## Install Docker
@ -44,53 +66,29 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the RPM package and install it manually and manage
upgrades completely manually.
- Some users cannot use third-party repositories, and must rely on the version
of Docker in the OpenSUSE or SLES repositories. This version of Docker may be
out of date. Those users should consult the OpenSuSE or SLES documentation and
not follow these procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
1. Use the following command to set up the **stable** repository:
Use the following command to set up the **stable** repository, using the
Docker EE repository URL you located in the [prerequisites](#prerequisites).
```bash
$ sudo zypper addrepo \
https://yum.dockerproject.org/repo/main/opensuse/13.2/ \
docker-main
```
{% assign minor-version = "17.03" %}
2. **Optional**: Enable the **testing** repository. You can enable it alongside
the stable repository. **Do not use unstable repositories on on production
systems or for non-testing workloads.**
```bash
$ sudo zypper addrepo \
<DOCKER-EE-URL>/stable-{{ minor-version }} \
docker-ee-stable
```
> **Warning**: If you have both stable and unstable repositories enabled,
> updating without specifying a version in the `zypper install` or
> `zypper update` command will always install the highest possible version,
> which will almost certainly be an unstable one.
```bash
$ sudo zypper addrepo \
https://yum.dockerproject.org/repo/testing/opensuse/13.2/ \
docker-testing
```
You can disable a repository at any time by running the `zypper rmrepo`
command. The following command disables the `testing` repository.
```bash
$ sudo zypper removerepo docker-testing
```
#### Install Docker
#### Install Docker EE
1. Update the `zypper` package index.
@ -101,27 +99,14 @@ Docker from the repository.
If this is the first time you have refreshed the package index since adding
the Docker repositories, you will be prompted to accept the GPG key, and
the key's fingerprint will be shown. Verify that the fingerprint matches
`58118E89F3A912897C070ADBF76221572C52609D` and if so, accept the key.
`77FE DA13 1A83 1D29 A418 D3E8 99E5 FF2E 7668 2BC9` and if so, accept the
key.
2. Install the latest version of Docker, or go to the next step to install a
2. Install the latest version of Docker EE, or go to the next step to install a
specific version.
```bash
$ sudo zypper install docker-engine
```
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating Docker without specifying a version in the
> `zypper install` or `zypper update` command will always install the highest
> available version, which will almost certainly be an unstable one.
The RPM will install, but you will receive the following error during the
post-installation procedure, because Docker cannot start the service
automatically:
```none
Additional rpm output:
/var/tmp/rpm-tmp.YGySzA: line 1: fg: no job control
$ sudo zypper install docker-ee
```
Start Docker:
@ -136,36 +121,25 @@ Docker from the repository.
source packages, omit the `-t package` flag from the command.
```bash
$ zypper search -s --match-exact -t package docker-engine
$ zypper search -s --match-exact -t package docker-ee
Loading repository data...
Reading installed packages...
S | Name | Type | Version | Arch | Repository
--+---------------+---------+---------------------------------------+--------+---------------
| docker-engine | package | 1.13.0-1 | x86_64 | docker-main
| docker-engine | package | 1.12.6-1 | x86_64 | docker-main
| docker-engine | package | 1.12.5-1 | x86_64 | docker-main
| docker-ee | package | {{ minor-version }}-1 | x86_64 | docker-ee-stable
```
The contents of the list depend upon which repositories you have enabled.
Choose a specific version to
install. The third column is the version string. The fifth column is the
repository name, which indicates which repository the package is from and by
extension its stability level. To install a specific version, append the
version string to the package name and separate them by a hyphen (`-`):
Choose a specific version to install. The third column is the version
string. The fifth column is the repository name, which indicates which
repository the package is from and by extension its stability level. To
install a specific version, append the version string to the package name
and separate them by a hyphen (`-`):
```bash
$ sudo zypper install docker-engine-<VERSION_STRING>
```
The RPM will install, but you will receive the following error during the
post-installation procedure, because Docker cannot start the service
automatically:
```none
Additional rpm output:
/var/tmp/rpm-tmp.YGySzA: line 1: fg: no job control
$ sudo zypper install docker-ee-<VERSION_STRING>
```
Start Docker:
@ -174,7 +148,7 @@ Docker from the repository.
$ sudo service docker start
```
4. Verify that `docker` is installed correctly by running the `hello-world`
4. Verify that Docker EE is installed correctly by running the `hello-world`
image.
```bash
@ -184,43 +158,39 @@ Docker from the repository.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Linux postinstall](linux-postinstall.md) to allow non-privileged
users to run Docker commands and for other optional configuration steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Linux postinstall](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, first run `sudo zypper refresh`, then follow the
To upgrade Docker EE, first run `sudo zypper refresh`, then follow the
[installation instructions](#install-docker), choosing the new version you want
to install.
### Install from a package
If you cannot use Docker's repository to install Docker, you can download the
`.rpm` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
If you cannot use the official Docker repository to install Docker, you can
download the `.rpm` file for your release and install it manually. You will
need to download a new file each time you want to upgrade Docker.
1. Go to [https://yum.dockerproject.org/repo/main/opensuse/13.2/Packages/](https://yum.dockerproject.org/repo/main/opensuse/13.2/Packages/)
and download the `.rpm` file for the Docker version you want to install.
1. Go to the Docker EE repository URL associated with your
trial or subscription in your browser. Go to
`x86_64/stable-{{ minor-version }}` and download the `.rpm` file for the
Docker version you want to install.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
2. Import Docker's official GPG key:
2. Install Docker, changing the path below to the path where you downloaded
```bash
$ sudo rpm --import <DOCKER-EE-URL>/gpg
```
3. Install Docker EE, changing the path below to the path where you downloaded
the Docker package.
```bash
$ sudo yum -y install /path/to/package.rpm
```
The RPM will install, but you will receive the following error during the
post-installation procedure, because Docker cannot start the service
automatically:
```none
Additional rpm output:
/var/tmp/rpm-tmp.YGySzA: line 1: fg: no job control
$ sudo zypper install /path/to/package.rpm
```
Start Docker:
@ -229,7 +199,7 @@ a new file each time you want to upgrade Docker.
$ sudo service docker start
```
3. Verify that `docker` is installed correctly by running the `hello-world`
4. Verify that Docker EE is installed correctly by running the `hello-world`
image.
```bash
@ -239,24 +209,23 @@ a new file each time you want to upgrade Docker.
This command downloads a test image and runs it in a container. When the
container runs, it prints an informational message and exits.
Docker is installed and running. You need to use `sudo` to run Docker commands.
Continue to [Post-installation steps for Linux](linux-postinstall.md) to allow
non-privileged users to run Docker commands and for other optional configuration
steps.
Docker EE is installed and running. You need to use `sudo` to run Docker
commands. Continue to [Post-installation steps for Linux](linux-postinstall.md)
to allow non-privileged users to run Docker commands and for other optional
configuration steps.
#### Upgrade Docker
#### Upgrade Docker EE
To upgrade Docker, download the newer package file and repeat the
To upgrade Docker EE, download the newer package file and repeat the
[installation procedure](#install-from-a-package), using `zypper update`
instead of `zypper install`, and pointing to the new file.
## Uninstall Docker
1. Uninstallation using `zypper rm` fails. Uninstall the Docker package using
the following command:
1. Uninstall the Docker EE package using the following command.
```bash
$ sudo rpm -e --noscripts docker-engine
$ sudo zypper rm docker-ee
```
2. Images, containers, volumes, or customized configuration files on your host

View File

@ -14,6 +14,23 @@ To get started with Docker on Ubuntu, make sure you
## Prerequisites
### Docker EE customers
To install Docker Enterprise Edition (Docker EE), you need to know the Docker EE
repository URL associated with your trial or subscription. To get this information:
- Go to [https://store.docker.com/?overlay=subscriptions](https://store.docker.com/?overlay=subscriptions).
- Choose **Get Details** / **Setup Instructions** within the
**Docker Enterprise Edition for Ubuntu** section.
- Copy the URL from the field labeled
**Copy and paste this URL to download your Edition**.
Where the installation instructions differ for Docker EE and Docker CE, use this
URL when you see the placeholder text `<DOCKER-EE-URL>`.
To learn more about Docker EE, see
[Docker Enterprise Edition](https://www.docker.com/enterprise-edition/){: target="_blank" class="_" }.
### OS requirements
To install Docker, you need the 64-bit version of one of these Ubuntu versions:
@ -22,6 +39,21 @@ To install Docker, you need the 64-bit version of one of these Ubuntu versions:
- Xenial 16.04 (LTS)
- Trusty 14.04 (LTS)
### Uninstall old versions
Older versions of Docker were called `docker` or `docker-engine`. If these are
installed, uninstall them:
```bash
$ sudo apt-get remove docker docker-engine
```
It's OK if `apt-get` reports that none of these packages are installed.
The contents of `/var/lib/docker/`, including images, containers, volumes, and
networks, are preserved. The Docker CE package is now called `docker-ce`, and
the Docker EE package is now called `docker-ee`.
### Recommended extra packages for Trusty 14.04
Unless you have a strong reason not to, install the
@ -31,7 +63,7 @@ drivers.
```bash
$ sudo apt-get update
$ sudo apt-get install -y --no-install-recommends \
$ sudo apt-get install \
linux-image-extra-$(uname -r) \
linux-image-extra-virtual
```
@ -46,25 +78,28 @@ You can install Docker in different ways, depending on your needs:
recommended approach.
- Some users download the DEB package and install it manually and manage
upgrades completely manually.
- Some users cannot use the official Docker repositories, and must rely on
the version of Docker that comes with their operating system. This version of
Docker may be out of date. Those users should consult their operating system
documentation and not follow these procedures.
upgrades completely manually. This is useful in situations such as installing
Docker on air-gapped systems with no access to the internet.
### Install using the repository
Before you install Docker for the first time on a new host machine, you need to
set up the Docker repository. Afterward, you can install, update, or downgrade
Docker from the repository.
set up the Docker repository. Afterward, you can install and update Docker from
the repository.
#### Set up the repository
The procedure for setting up the repository is different for [Docker CE](#docker-ce) and
[Docker EE](#docker-ee).
##### Docker CE
{% assign download-url-base = "https://download.docker.com/linux/ubuntu" %}
1. Install packages to allow `apt` to use a repository over HTTPS:
```bash
$ sudo apt-get install -y --no-install-recommends \
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
@ -73,40 +108,91 @@ Docker from the repository.
2. Add Docker's official GPG key:
```bash
$ curl -fsSL https://apt.dockerproject.org/gpg | sudo apt-key add -
```
Verify that the key ID is `58118E89F3A912897C070ADBF76221572C52609D`.
```bash
$ apt-key fingerprint 58118E89F3A912897C070ADBF76221572C52609D
pub 4096R/2C52609D 2015-07-14
Key fingerprint = 5811 8E89 F3A9 1289 7C07 0ADB F762 2157 2C52 609D
uid Docker Release Tool (releasedocker) <docker@docker.com>
$ curl -fsSL {{ download-url-base}}/gpg | sudo apt-key add -
```
Verify that the key fingerprint is `9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88`.
```bash
$ sudo apt-key fingerprint 0EBFCD88
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
```
3. Use the following command to set up the **stable** repository.
> **Note**: The `lsb_release -cs` sub-command below returns the name of your
> Ubuntu distribution, such as `xenial`.
>
> Sometimes, in a distribution like Linux Mint, you might have to change
> `$(lsb_release -cs)` to your parent Ubuntu distribution. For
> example: If you are using `Linux Mint Rafaela`, you could use
> `trusty`.
To add the **edge** repository, add `edge` after `stable` on the last line of
the command. For information about **stable** and **edge** builds, see
[Docker variants](/engine/installation/#docker-variants).
```bash
$ sudo add-apt-repository \
"deb https://apt.dockerproject.org/repo/ \
ubuntu-$(lsb_release -cs) \
main"
"deb [arch=amd64] {{ download-url-base }} \
$(lsb_release -cs) \
stable"
```
To enable the `testing` repository, you can edit `/etc/apt/sources.list`
and add the word `testing` after `main` on the appropriate line of the file.
**Do not use unstable repositories on production systems or for non-testing workloads.**
[Learn about **stable** and **edge** builds](/engine/installation/).
> **Note**: Sometimes, in a distribution like Linux Mint, you might have
> to change `ubuntu-$(lsb_release -cs)` to your parent Ubuntu distribution.
> example: If you are using `Linux Mint Rafaela`, you could type in `ubuntu-trusty`
##### Docker EE
1. Install packages to allow `apt` to use a repository over HTTPS:
```bash
$ sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
software-properties-common
```
2. Add Docker's official GPG key using your customer Docker EE repository URL:
```bash
$ curl -fsSL <DOCKER-EE-URL>/gpg | sudo apt-key add -
```
Verify that the key fingerprint is `DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96`.
```bash
$ apt-key fingerprint 0EBFCD88
pub 4096R/6D085F96 2017-02-22
Key fingerprint = DD91 1E99 5A64 A202 E859 07D6 BC14 F10B 6D08 5F96
uid [ultimate] Docker Release (EE deb) <docker@docker.com>
sub 4096R/91A29FA3 2017-02-22
```
3. Use the following command to set up the **stable** repository, replacing
`<DOCKER-EE-URL>` with the URL you noted down in the
[prerequisites](#prerequisites).
> **Note**: The `lsb_release -cs` sub-command below returns the name of your
> Ubuntu distribution, such as `xenial`.
>
```bash
$ sudo add-apt-repository \
"deb [arch=amd64] <-DOCKER-EE-URL> \
$(lsb_release -cs) \
stable-{{ minor-version }}"
```
#### Install Docker
@ -121,26 +207,28 @@ Docker from the repository.
Use this command to install the latest version of Docker:
```bash
$ sudo apt-get -y install docker-engine
```
| Docker Edition | Command |
|----------------|-------------------------------------|
| Docker CE | `sudo apt-get install docker-ce` |
| Docker EE | `sudo apt-get install docker-ee` |
> **Warning**: If you have both stable and unstable repositories enabled,
> installing or updating without specifying a version in the
> `apt-get install` or `apt-get update` command will always install the
> highest possible version, which will almost certainly be an unstable one.
> **Warning**: If you have multiple Docker repositories enabled, installing
> or updating without specifying a version in the `apt-get install` or
> `apt-get update` command will always install the highest possible version,
> which may not be appropriate for your stability needs.
3. On production systems, you should install a specific version of Docker
instead of always using the latest. This output is truncated. List the
available versions.
available versions. For Docker EE customers, use `docker-ee` where you see
`docker-ce`.
{% assign minor-version = "17.03" %}
```bash
$ apt-cache madison docker-engine
$ apt-cache madison docker-ce
docker-engine | 1.13.0-0~ubuntu-xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
docker-engine | 1.12.6-0~ubuntu-xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
docker-engine | 1.12.5-0~ubuntu-xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
docker-engine | 1.12.4-0~ubuntu-xenial | https://apt.dockerproject.org/repo ubuntu-xenial/main amd64 Packages
docker-ce | {{ minor-version }}.0~ce-0~ubuntu-xenial | {{ download-url-base}} xenial/stable amd64 Packages
```
The contents of the list depend upon which repositories are enabled,
@ -151,14 +239,15 @@ Docker from the repository.
by extension its stability level. To install a specific version, append the
version string to the package name and separate them by an equals sign (`=`):
```bash
$ sudo apt-get -y install docker-engine=<VERSION_STRING>
```
| Docker Edition | Command |
|----------------|-----------------------------------------------|
| Docker CE | `sudo apt-get install docker-ce=<VERSION>` |
| Docker EE | `sudo apt-get install docker-ee=<VERSION>` |
The Docker daemon starts automatically.
4. Verify that `docker` is installed correctly by running the `hello-world`
image.
4. Verify that Docker CE or Docker EE is installed correctly by running the
`hello-world` image.
```bash
$ sudo docker run hello-world
@ -184,13 +273,21 @@ If you cannot use Docker's repository to install Docker, you can download the
`.deb` file for your release and install it manually. You will need to download
a new file each time you want to upgrade Docker.
1. Go to [https://apt.dockerproject.org/repo/pool/main/d/docker-engine/](https://apt.dockerproject.org/repo/pool/main/d/docker-engine/)
1. This step is different for Docker CE and Docker EE.
- **Docker CE**: Go to
[{{ download-url-base }}/pool/stable-{{ minor-version }}/amd64/]({{ download-url-base }}/pool/stable-{{ minor-version }}/amd64/)
and download the `.deb` file for the Docker version you want to install and
for your version of Ubuntu.
> **Note**: To install a testing version, change the word `main` in the
> URL to `testing`. Do not use unstable versions of Docker in production
> or for non-testing workloads.
> **Note**: To install an **edge** package, change the word
> `stable` in the > URL to `edge`. For information about **stable** and
> **edge** builds, see
> [Docker variants](/engine/installation/#docker-variants).
- **Docker EE**: Go to the Docker EE repository URL associated with your
trial or subscription in your browser. Go to `x86_64/stable` and download
the `.rpm` file for the Docker version you want to install.
2. Install Docker, changing the path below to the path where you downloaded
the Docker package.
@ -201,8 +298,8 @@ a new file each time you want to upgrade Docker.
The Docker daemon starts automatically.
3. Verify that `docker` is installed correctly by running the `hello-world`
image.
3. Verify that Docker CE or Docker EE is installed correctly by running the
`hello-world` image.
```bash
$ sudo docker run hello-world
@ -225,9 +322,10 @@ To upgrade Docker, download the newer package file and repeat the
1. Uninstall the Docker package:
```bash
$ sudo apt-get purge docker-engine
```
| Docker Edition | Command |
|----------------|--------------------------------|
| Docker CE | `sudo apt-get purge docker-ce` |
| Docker EE | `sudo apt-get purge docker-ee` |
2. Images, containers, volumes, or customized configuration files on your host
are not automatically removed. To delete all images, containers, and

View File

@ -13,3 +13,4 @@ https://www.github.com/docker/docker
-->
{% include cli.md %}

View File

@ -173,7 +173,7 @@ profile docker-nginx flags=(attach_disconnected,mediate_deleted) {
-p 80:80 -d --name apparmor-nginx nginx
```
4. Exec into the running container
4. Exec into the running container.
```bash
$ docker exec -it apparmor-nginx bash

View File

@ -19,8 +19,8 @@ ability to use digital signatures for data sent to and received from remote
Docker registries. These signatures allow client-side verification of the
integrity and publisher of specific image tags.
Currently, content trust is disabled by default. You must enable it by setting
the `DOCKER_CONTENT_TRUST` environment variable. Refer to the
Currently, content trust is disabled by default. To enable it, set
the `DOCKER_CONTENT_TRUST` environment variable to `1`. Refer to the
[environment variables](../../reference/commandline/cli.md#environment-variables)
and [Notary](../../reference/commandline/cli.md#notary) configuration
for the docker client for more options.

View File

@ -8,10 +8,10 @@ Trust for an image tag is managed through the use of keys. Docker's content
trust makes use of five different types of keys:
| Key | Description |
|---------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|:-----------|:----------- |
| root key | Root of content trust for an image tag. When content trust is enabled, you create the root key once. Also known as the offline key, because it should be kept offline. |
| targets | This key allows you to sign image tags, to manage delegations including delegated keys or permitted delegation paths. Also known as the repository key, since this key determines what tags can be signed into an image repository. |
| snapshot | This key signs the current collection of image tags, preventing mix and match attacks.
| snapshot | This key signs the current collection of image tags, preventing mix and match attacks. |
| timestamp | This key allows Docker image repositories to have freshness security guarantees without requiring periodic content refreshes on the client's side. |
| delegation | Delegation keys are optional tagging keys and allow you to delegate signing image tags to other publishers without having to share your targets key. |
@ -39,7 +39,7 @@ repositories created with newer versions of Docker.
The passphrases you chose for both the root key and your repository key should
be randomly generated and stored in a password manager. Having the repository key
allows users to sign image tags on a repository. Passphrases are used to encrypt
your keys at rest and ensures that a lost laptop or an unintended backup doesn't
your keys at rest and ensure that a lost laptop or an unintended backup doesn't
put the private key material at risk.
## Back up your keys

View File

@ -82,7 +82,7 @@ Use these links to read about specific commands, or continue to the
- [`docker secret create`](../reference/commandline/secret_create.md)
- [`docker secret inspect`](../reference/commandline/secret_inspect.md)
- [`docker service ls`](../reference/commandline/secret_ls.md)
- [`docker secret ls`](../reference/commandline/secret_ls.md)
- [`docker secret rm`](../reference/commandline/secret_rm.md)
- [`--secret`](../reference/commandline/service_create.md#create-a-service-with-secrets) flag for `docker service create`
- [`--secret-add` and `--secret-rm`](../reference/commandline/service_update.md#adding-and-removing-secrets) flags for `docker service update`

View File

@ -183,7 +183,7 @@ instruction creates a new layer in the image. Some examples of Dockerfile
instructions are:
* Specify the base image (`FROM`)
* Specify the maintainer (`MAINTAINER`)
* Specify image metadata (`LABEL`)
* Run a command (`RUN`)
* Add a file or directory (`ADD`)
* Create an environment variable (`ENV`)

20
enterprise/index.md Normal file
View File

@ -0,0 +1,20 @@
---
title: About Docker EE
description: Information about Docker Enterprise Edition
keywords: enterprise, enterprise edition, ee, docker ee, docker enterprise edition, lts, commercial, cs, cs engine
---
Docker Enterprise Edition (Docker EE) is designed for enterprise development and
IT teams who build, ship, and run business critical applications in production
at scale. Docker EE is integrated, certified, and supported to provide
enterprises with the most secure container platform in the industry to modernize
all applications. For more information about Docker EE, including purchasing
options, see [Docker Enterprise Edition](https://www.docker.com/enterprise-edition/).
## Platform support matrix
This table shows all the platforms available for Docker EE as well as Docker CE.
The links in the first column take you straight to the installation instructions
for each platform.
{% include docker_platform_matrix.md %}

Some files were not shown because too many files have changed in this diff Show More