1
0
Fork 0
mirror of https://github.com/moby/moby.git synced 2022-11-09 12:21:53 -05:00

Creating Engine specific menu

Fixing the links
Updating with Seb's comments
Adding weight
Fixing the engine aliases
Updating after Arun pushed
Removing empty file

Signed-off-by: Mary Anthony <mary@docker.com>
This commit is contained in:
Mary Anthony 2016-01-23 20:36:40 -08:00
parent e23ea05e11
commit e310d070f4
125 changed files with 695 additions and 1331 deletions

View file

@ -1,18 +1,17 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/ambassador_pattern_linking/"]
title = "Link via an ambassador container"
description = "Using the Ambassador pattern to abstract (network) services"
keywords = ["Examples, Usage, links, docker, documentation, examples, names, name, container naming"]
[menu.main]
parent = "smn_administrate"
parent = "engine_admin"
weight = 6
+++
<![end-metadata]-->
# Link via an ambassador container
## Introduction
Rather than hardcoding network links between a service consumer and
provider, Docker encourages service portability, for example instead of:

View file

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 76 KiB

After

Width:  |  Height:  |  Size: 76 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 70 KiB

After

Width:  |  Height:  |  Size: 70 KiB

Before After
Before After

View file

Before

Width:  |  Height:  |  Size: 9.4 KiB

After

Width:  |  Height:  |  Size: 9.4 KiB

Before After
Before After

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/cfengine/"]
title = "Process management with CFEngine"
description = "Managing containerized processes with CFEngine"
keywords = ["cfengine, process, management, usage, docker, documentation"]
[menu.main]
parent = "smn_third_party"
parent = "engine_admin"
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/chef/"]
title = "Using Chef"
description = "Installation and using Docker via Chef"
keywords = ["chef, installation, usage, docker, documentation"]
[menu.main]
parent = "smn_third_party"
parent = "engine_admin"
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/configuring/"]
title = "Configuring and running Docker"
description = "Configuring and running the Docker daemon on various distributions"
keywords = ["docker, daemon, configuration, running, process managers"]
[menu.main]
parent = "smn_administrate"
parent = "engine_admin"
weight = 3
+++
<![end-metadata]-->
@ -65,7 +66,7 @@ with explanations.
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`.
After successfully [installing Docker for Ubuntu](../installation/ubuntulinux.md),
After successfully [installing Docker for Ubuntu](../installation/linux/ubuntulinux.md),
you can check the running status using Upstart in this way:
$ sudo status docker
@ -154,7 +155,7 @@ can be located at `/var/log/upstart/docker.log`
As of `7.x`, CentOS and RHEL use `systemd` as the process manager. As of `21`, Fedora uses
`systemd` as its process manager.
After successfully installing Docker for [CentOS](../installation/centos.md)/[Red Hat Enterprise Linux](../installation/rhel.md)/[Fedora](../installation/fedora.md), you can check the running status in this way:
After successfully installing Docker for [CentOS](../installation/linux/centos.md)/[Red Hat Enterprise Linux](../installation/linux/rhel.md)/[Fedora](../installation/linux/fedora.md), you can check the running status in this way:
$ sudo systemctl status docker

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/dsc/"]
title = "PowerShell DSC Usage"
description = "Using DSC to configure a new Docker host"
keywords = ["powershell, dsc, installation, usage, docker, documentation"]
[menu.main]
parent = "smn_win_osx"
parent = "engine_admin"
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/host_integration/"]
title = "Automatically start containers"
description = "How to generate scripts for upstart, systemd, etc."
keywords = ["systemd, upstart, supervisor, docker, documentation, host integration"]
[menu.main]
parent = "smn_administrate"
parent = "engine_admin"
+++
<![end-metadata]-->

11
docs/admin/index.md Normal file
View file

@ -0,0 +1,11 @@
<!-- [metadata]>
+++
title = "Administrate"
description = "Administrate"
keywords = ["Administrate"]
[menu.main]
parent="engine_use"
identifier="engine_admin"
weight="-70"
+++
<![end-metadata]-->

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/awslogs/"]
title = "Amazon CloudWatch Logs logging driver"
description = "Describes how to use the Amazon CloudWatch Logs logging driver."
keywords = ["AWS, Amazon, CloudWatch, logging, driver"]
@ -87,5 +88,3 @@ and `logs:PutLogEvents` actions, as shown in the following example.
}
]
}

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/fluentd/"]
title = "Fluentd logging driver"
description = "Describes how to use the fluentd logging driver."
keywords = ["Fluentd, docker, logging, driver"]

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/"]
title = "Logging"
description = "Logging and Logging Drivers"
keywords = [" docker, logging, driver"]
[menu.main]
parent = "smn_administrate"
parent = "engine_admin"
identifier = "smn_logging"
weight=8
+++

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/journald/"]
title = "journald logging driver"
description = "Describes how to use the fluentd logging driver."
keywords = ["Fluentd, docker, logging, driver"]

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/log_tags/"]
title = "Log tags for logging driver"
description = "Describes how to format tags for."
keywords = ["docker, logging, driver, syslog, Fluentd, gelf"]

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/overview/"]
title = "Configuring Logging Drivers"
description = "Configure logging driver."
keywords = ["docker, logging, driver, Fluentd"]

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/splunk/"]
title = "Splunk logging driver"
description = "Describes how to use the Splunk logging driver."
keywords = ["splunk, docker, logging, driver"]

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/puppet/"]
title = "Using Puppet"
description = "Installing and using Puppet"
keywords = ["puppet, installation, usage, docker, documentation"]
[menu.main]
parent = "smn_third_party"
parent = "engine_admin"
+++
<![end-metadata]-->
@ -12,7 +13,7 @@ parent = "smn_third_party"
> *Note:* Please note this is a community contributed installation path. The
> only `official` installation is using the
> [*Ubuntu*](../installation/ubuntulinux.md) installation
> [*Ubuntu*](../installation/linux/ubuntulinux.md) installation
> path. This version may sometimes be out of date.
## Requirements

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/registry_mirror/"]
title = "Run a local registry mirror"
description = "How to set up and run a local registry mirror"
keywords = ["docker, registry, mirror, examples"]
[menu.main]
parent = "mn_docker_hub"
parent = "engine_admin"
weight = 8
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/run_metrics"]
title = "Runtime metrics"
description = "Measure the behavior of running containers"
keywords = ["docker, metrics, CPU, memory, disk, IO, run, runtime, stats"]
[menu.main]
parent = "smn_administrate"
parent = "engine_admin"
weight = 4
+++
<![end-metadata]-->

View file

@ -1,11 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/reference/logging/systemd/"]
title = "Control and configure Docker with systemd"
description = "Controlling and configuring Docker using systemd"
keywords = ["docker, daemon, systemd, configuration"]
[menu.main]
parent = "smn_administrate"
weight = 7
parent = "engine_admin"
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/articles/using_supervisord/"]
title = "Using Supervisor with Docker"
description = "How to use Supervisor process management with Docker"
keywords = ["docker, supervisor, process management"]
[menu.main]
parent = "smn_third_party"
parent = "engine_admin"
+++
<![end-metadata]-->

10
docs/articles/index.md Normal file
View file

@ -0,0 +1,10 @@
<!--[metadata]>
+++
title = "Applied Docker"
description = "How to use Docker"
keywords = ["docker, examples, process management"]
[menu.main]
identifier = "engine_admin"
parent="engine_use"
+++
<![end-metadata]-->

View file

@ -1,16 +1,18 @@
<!--[metadata]>
+++
title = "Docker Deprecated Features"
aliases = ["/engine/misc/deprecated/"]
title = "Deprecated Engine Features"
description = "Deprecated Features."
keywords = ["docker, documentation, about, technology, deprecate"]
[menu.main]
parent = "mn_use_docker"
parent = "engine_use"
weight=80
+++
<![end-metadata]-->
# Deprecated Features
# Deprecated Engine Features
The following list of features are deprecated.
The following list of features are deprecated in Engine.
### Ambiguous event fields in API
**Deprecated In Release: v1.10**

View file

@ -4,7 +4,7 @@ title = "Dockerizing an apt-cacher-ng service"
description = "Installing and running an apt-cacher-ng service"
keywords = ["docker, example, package installation, networking, debian, ubuntu"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing a Couchbase service"
description = "Dockerizing a Couchbase service"
keywords = ["docker, example, package installation, networking, couchbase"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing a CouchDB service"
description = "Sharing data between 2 couchdb databases"
keywords = ["docker, example, package installation, networking, couchdb, data volumes"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -1,16 +1,16 @@
<!--[metadata]>
+++
title = "Applied Docker"
title = "Dockerize an application"
description = "Provides examples for using Docker"
keywords = ["dockerize, dockerizing apps, dockerizing applications, container, containers"]
[menu.main]
identifier = "smn_applied"
parent = "mn_use_docker"
identifier = "engine_dockerize"
parent="engine_use"
weight = 8
+++
<![end-metadata]-->
# Examples
# Dockerize an application
This section contains the following:
@ -20,4 +20,4 @@ This section contains the following:
* [Dockerizing a Node.js web app](nodejs_web_app.md)
* [Dockerizing a Redis service](running_redis_service.md)
* [Dockerizing an apt-cacher-ng service](apt-cacher-ng.md)
* [Dockerizing applications: A 'Hello world'](../userguide/dockerizing.md)
* [Dockerizing applications: A 'Hello world'](../userguide/containers/dockerizing.md)

View file

@ -4,7 +4,7 @@ title = "Dockerizing MongoDB"
description = "Creating a Docker image with MongoDB pre-installed using a Dockerfile and sharing the image on Docker Hub"
keywords = ["docker, dockerize, dockerizing, article, example, docker.io, platform, package, installation, networking, mongodb, containers, images, image, sharing, dockerfile, build, auto-building, framework"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->
@ -173,5 +173,5 @@ the exposed port to two different ports on the host
$ mongo --port 28002
- [Linking containers](../userguide/networking/default_network/dockerlinks.md)
- [Cross-host linking containers](../articles/ambassador_pattern_linking.md)
- [Cross-host linking containers](../admin/ambassador_pattern_linking.md)
- [Creating an Automated Build](https://docs.docker.com/docker-hub/builds/)

View file

@ -4,7 +4,7 @@ title = "Dockerizing a Node.js web app"
description = "Installing and running a Node.js app with Docker"
keywords = ["docker, example, package installation, node, centos"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing PostgreSQL"
description = "Running and installing a PostgreSQL service"
keywords = ["docker, example, package installation, postgresql"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing a Redis service"
description = "Installing and running an redis service"
keywords = ["docker, example, package installation, networking, redis"]
[menu.main]
parent = "smn_applied"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing a Riak service"
description = "Build a Docker image with Riak pre-installed"
keywords = ["docker, example, package installation, networking, riak"]
[menu.main]
parent = "smn_apps_servs"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Dockerizing an SSH service"
description = "Installing and running an SSHd service on Docker"
keywords = ["docker, example, package installation, networking"]
[menu.main]
parent = "smn_apps_servs"
parent = "engine_dockerize"
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Access authorization plugin"
description = "How to create authorization plugins to manage access control to your Docker daemon."
keywords = ["security, authorization, authentication, docker, documentation, plugin, extend"]
[menu.main]
parent = "mn_extend"
parent = "engine_extend"
weight = -1
+++
<![end-metadata]-->

View file

@ -1,19 +1,19 @@
<!--[metadata]>
+++
title = "Extend Docker"
description = "How to extend Docker with plugins"
title = "Extend Engine"
description = "How to extend Docker Engine with plugins"
keywords = ["extend, plugins, docker, documentation, developer"]
[menu.main]
identifier = "mn_extend"
name = "Extend Docker"
identifier = "engine_extend"
parent = "engine_use"
weight = 6
+++
<![end-metadata]-->
## Extending Docker
## Extending Docker Engine
Currently, you can extend Docker by adding a plugin. This section contains the following topics:
Currently, you can extend Docker Engine by adding a plugin. This section contains the following topics:
* [Understand Docker plugins](plugins.md)
* [Write a volume plugin](plugins_volume.md)

View file

@ -4,7 +4,7 @@ title = "Plugins API"
description = "How to write Docker plugins extensions "
keywords = ["API, Usage, plugins, documentation, developer"]
[menu.main]
parent = "mn_extend"
parent = "engine_extend"
weight=1
+++
<![end-metadata]-->

View file

@ -1,15 +1,15 @@
<!--[metadata]>
+++
title = "Extending Docker with plugins"
title = "Extending Engine with plugins"
description = "How to add additional functionality to Docker with plugins extensions"
keywords = ["Examples, Usage, plugins, docker, documentation, user guide"]
[menu.main]
parent = "mn_extend"
parent = "engine_extend"
weight=-1
+++
<![end-metadata]-->
# Understand Docker plugins
# Understand Engine plugins
You can extend the capabilities of the Docker Engine by loading third-party
plugins. This page explains the types of plugins and provides links to several

View file

@ -4,19 +4,19 @@ title = "Docker network driver plugins"
description = "Network driver plugins."
keywords = ["Examples, Usage, plugins, docker, documentation, user guide"]
[menu.main]
parent = "mn_extend"
parent = "engine_extend"
+++
<![end-metadata]-->
# Docker network driver plugins
# Engine network driver plugins
Docker network plugins enable Docker deployments to be extended to support a
wide range of networking technologies, such as VXLAN, IPVLAN, MACVLAN or
something completely different. Network driver plugins are supported via the
Docker Engine network plugins enable Engine deployments to be extended to
support a wide range of networking technologies, such as VXLAN, IPVLAN, MACVLAN
or something completely different. Network driver plugins are supported via the
LibNetwork project. Each plugin is implemented asa "remote driver" for
LibNetwork, which shares plugin infrastructure with Docker. Effectively,
network driver plugins are activated in the same way as other plugins, and use
the same kind of protocol.
LibNetwork, which shares plugin infrastructure with Engine. Effectively, network
driver plugins are activated in the same way as other plugins, and use the same
kind of protocol.
## Using network driver plugins

View file

@ -4,16 +4,16 @@ title = "Volume plugins"
description = "How to manage data with external volume plugins"
keywords = ["Examples, Usage, volume, docker, data, volumes, plugin, api"]
[menu.main]
parent = "mn_extend"
parent = "engine_extend"
+++
<![end-metadata]-->
# Write a volume plugin
Docker volume plugins enable Docker deployments to be integrated with external
storage systems, such as Amazon EBS, and enable data volumes to persist beyond
the lifetime of a single Docker host. See the [plugin documentation](plugins.md)
for more information.
Docker Engine volume plugins enable Engine deployments to be integrated with
external storage systems, such as Amazon EBS, and enable data volumes to persist
beyond the lifetime of a single Engine host. See the [plugin
documentation](plugins.md) for more information.
## Command-line changes
@ -214,4 +214,3 @@ Get the list of volumes registered with the plugin.
```
Respond with a string error if an error occurred.

View file

@ -1,11 +1,12 @@
<!--[metadata]>
+++
aliases = ["/engine/misc/faq/"]
title = "FAQ"
description = "Most frequently asked questions."
keywords = ["faq, questions, documentation, docker"]
[menu.main]
parent = "mn_about"
weight = 3
parent = "engine_use"
weight = 80
+++
<![end-metadata]-->
@ -17,9 +18,9 @@ repo](https://github.com/docker/docker) and contribute them yourself by editing
the documentation sources.
### How much does Docker cost?
### How much does Engine cost?
Docker is 100% free. It is open source, so you can use it without paying.
Docker Engine is 100% free. It is open source, so you can use it without paying.
### What open source license are you using?
@ -29,14 +30,14 @@ https://github.com/docker/docker/blob/master/LICENSE)
### Does Docker run on Mac OS X or Windows?
Docker currently runs only on Linux, but you can use VirtualBox to run Docker
in a virtual machine on your box, and get the best of both worlds. Check out
the [*Mac OS X*](../installation/mac.md) and [*Microsoft
Windows*](../installation/windows.md) installation guides. The small Linux
Docker Engine currently runs only on Linux, but you can use VirtualBox to run
Engine in a virtual machine on your box, and get the best of both worlds. Check
out the [*Mac OS X*](installation/mac.md) and [*Microsoft
Windows*](installation/windows.md) installation guides. The small Linux
distribution boot2docker can be set up using the Docker Machine tool to be run
inside virtual machines on these two operating systems.
>**Note:** if you are using a remote Docker daemon on a VM through Docker
>**Note:** if you are using a remote Docker Engine daemon on a VM through Docker
>Machine, then _do not_ type the `sudo` before the `docker` commands shown in
>the documentation's examples.
@ -46,13 +47,13 @@ They are complementary. VMs are best used to allocate chunks of hardware
resources. Containers operate at the process level, which makes them very
lightweight and perfect as a unit of software delivery.
### What does Docker add to just plain LXC?
### What does Docker technology add to just plain LXC?
Docker is not a replacement for LXC. "LXC" refers to capabilities of the Linux
kernel (specifically namespaces and control groups) which allow sandboxing
processes from one another, and controlling their resource allocations. On top
of this low-level foundation of kernel features, Docker offers a high-level tool
with several powerful functionalities:
Docker technology is not a replacement for LXC. "LXC" refers to capabilities of
the Linux kernel (specifically namespaces and control groups) which allow
sandboxing processes from one another, and controlling their resource
allocations. On top of this low-level foundation of kernel features, Docker
offers a high-level tool with several powerful functionalities:
- *Portable deployment across machines.* Docker defines a format for bundling
an application and all its dependencies into a single object which can be
@ -77,7 +78,7 @@ with several powerful functionalities:
- *Automatic build.* Docker includes [*a tool for developers to automatically
assemble a container from their source
code*](../reference/builder.md), with full control over application
code*](reference/builder.md), with full control over application
dependencies, build tools, packaging etc. They are free to use `make`, `maven`,
`chef`, `puppet`, `salt,` Debian packages, RPMs, source tarballs, or any
combination of the above, regardless of the configuration of the machines.
@ -90,7 +91,7 @@ with several powerful functionalities:
uploads and downloads, similar to `git pull`, so new versions of a container
can be transferred by only sending diffs.
- *Component re-use.* Any container can be used as a [*"base image"*](../reference/glossary.md#image) to create more specialized components. This can
- *Component re-use.* Any container can be used as a [*"base image"*](reference/glossary.md#image) to create more specialized components. This can
be done manually or as part of an automated build. For example you can prepare
the ideal Python environment, and use it as a base for 10 different
applications. Your ideal PostgreSQL setup can be re-used for all your future
@ -135,10 +136,10 @@ thousands or even millions of containers running in parallel.
### How do I connect Docker containers?
Currently the recommended way to connect containers is via the Docker network feature. You can see details of how to [work with Docker networks here](../userguide/networking/work-with-networks.md).
Currently the recommended way to connect containers is via the Docker network feature. You can see details of how to [work with Docker networks here](userguide/networking/work-with-networks.md).
Also useful for more flexible service portability is the [Ambassador linking
pattern](../articles/ambassador_pattern_linking.md).
pattern](admin/ambassador_pattern_linking.md).
### How do I run more than one process in a Docker container?
@ -147,7 +148,7 @@ http://supervisord.org/), runit, s6, or daemontools can do the trick. Docker
will start up the process management daemon which will then fork to run
additional processes. As long as the processor manager daemon continues to run,
the container will continue to as well. You can see a more substantial example
[that uses supervisord here](../articles/using_supervisord.md).
[that uses supervisord here](admin/using_supervisord.md).
### What platforms does Docker run on?
@ -269,4 +270,4 @@ You can find more answers on:
- [Ask questions on Stackoverflow](http://stackoverflow.com/search?q=docker)
- [Join the conversation on Twitter](http://twitter.com/docker)
Looking for something else to read? Checkout the [User Guide](../userguide/index.md).
Looking for something else to read? Checkout the [User Guide](userguide/index.md).

View file

@ -1,14 +1,16 @@
<!--[metadata]>
<!-- [metadata]>
+++
title = "About Docker"
description = "Introduction to Docker."
keywords = ["docker, introduction, documentation, about, technology, understanding, Dockerfile"]
aliases = ["/engine/misc/"]
title = "Engine"
description = "Engine"
keywords = ["Engine"]
[menu.main]
parent = "mn_use_docker"
identifier="engine_use"
weight=-85
+++
<![end-metadata]-->
# About Docker
# About Docker Engine
**Develop, Ship and Run Any Application, Anywhere**
@ -73,7 +75,7 @@ Docker consists of:
## About this guide
The [Understanding Docker section](../introduction/understanding-docker.md) will help you:
The [Understanding Docker section](understanding-docker.md) will help you:
- See how Docker works at a high level
- Understand the architecture of Docker
@ -83,14 +85,14 @@ The [Understanding Docker section](../introduction/understanding-docker.md) will
### Installation guides
The [installation section](../installation/index.md) will show you how to install Docker
The [installation section](installation/index.md) will show you how to install Docker
on a variety of platforms.
### Docker user guide
To learn about Docker in more detail and to answer questions about usage and
implementation, check out the [Docker User Guide](../userguide/index.md).
implementation, check out the [Docker User Guide](userguide/index.md).
## Release notes
@ -117,4 +119,3 @@ The complete list of deprecated features can be found on the
Docker is licensed under the Apache License, Version 2.0. See
[LICENSE](https://github.com/docker/docker/blob/master/LICENSE) for the full
license text.

View file

@ -4,7 +4,7 @@ title = "Installation from binaries"
description = "Instructions for installing Docker as a binary. Mostly meant for hackers who want to try out Docker on a variety of environments."
keywords = ["binaries, installation, docker, documentation, linux"]
[menu.main]
parent = "smn_engine"
parent = "engine_install"
weight = 110
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Example: Manual install on a cloud provider"
description = "Example of a manual install of Docker Engine on a cloud provider, using Amazon Web Services (AWS) EC2. Shows how to create an EC2 instance, and install Docker Engine on it."
keywords = ["cloud, docker, machine, documentation, installation, AWS, EC2"]
[menu.main]
parent = "smn_cloud"
parent = "install_cloud"
+++
<![end-metadata]-->
@ -34,23 +34,23 @@ Launch an instance to create a virtual machine (VM) with a specified operating s
On the AWS home page, click **EC2** to go to the dashboard, then click **Launch Instance**.
![EC2 dashboard](images/ec2_launch_instance.png)
![EC2 dashboard](../images/ec2_launch_instance.png)
AWS EC2 virtual servers are called *instances* in Amazon parlance. Once you set up an account, IAM user and key pair, you are ready to launch an instance. It is at this point that you select the OS for the VM.
2. Choose an Amazon Machine Image (AMI) with the OS and applications you want. For this example, we select an Ubuntu server.
![Launch Ubuntu](images/ec2-ubuntu.png)
![Launch Ubuntu](../images/ec2-ubuntu.png)
3. Choose an instance type.
![Choose a general purpose instance type](images/ec2_instance_type.png)
![Choose a general purpose instance type](../images/ec2_instance_type.png)
4. Configure the instance.
You can select the default network and subnet, which are inherently linked to a region and availability zone.
![Configure the instance](images/ec2_instance_details.png)
![Configure the instance](../images/ec2_instance_details.png)
5. Click **Review and Launch**.

View file

@ -4,7 +4,7 @@ title = "Example: Use Docker Machine to provision cloud hosts"
description = "Example of using Docker Machine to install Docker Engine on a cloud provider, using Digital Ocean."
keywords = ["cloud, docker, machine, documentation, installation, digitalocean"]
[menu.main]
parent = "smn_cloud"
parent = "install_cloud"
+++
<![end-metadata]-->
@ -28,19 +28,19 @@ To generate your access token:
1. Go to the Digital Ocean administrator console and click **API** in the header.
![Click API in Digital Ocean console](images/ocean_click_api.png)
![Click API in Digital Ocean console](../images/ocean_click_api.png)
2. Click **Generate New Token** to get to the token generator.
![Generate token](images/ocean_gen_token.png)
![Generate token](../images/ocean_gen_token.png)
3. Give the token a clever name (e.g. "machine"), make sure the **Write (Optional)** checkbox is checked, and click **Generate Token**.
![Name and generate token](images/ocean_token_create.png)
![Name and generate token](../images/ocean_token_create.png)
4. Grab (copy to clipboard) the generated big long hex string and store it somewhere safe.
![Copy and save personal access token](images/ocean_save_token.png)
![Copy and save personal access token](../images/ocean_save_token.png)
This is the personal access token you'll use in the next step to create your cloud server.
@ -133,7 +133,7 @@ To generate your access token:
2. Go to the Digital Ocean console to view the new Droplet.
![Droplet in Digital Ocean created with Machine](images/ocean_droplet.png)
![Droplet in Digital Ocean created with Machine](../images/ocean_droplet.png)
3. At the command terminal, run `docker-machine ls`.

View file

@ -1,18 +1,10 @@
<!--[metadata]>
+++
aliases = [
"/engine/installation/amazon/",
"/engine/installation/google/",
"/engine/installation/softlayer/",
"/engine/installation/azure/",
"/engine/installation/rackspace/",
"/engine/installation/joyent/"
]
title = "Choose how to install"
description = "Installation instructions for Docker on cloud."
keywords = ["cloud, docker, machine, documentation, installation"]
[menu.main]
parent = "smn_cloud"
parent = "install_cloud"
weight=-3
+++
<![end-metadata]-->

View file

@ -0,0 +1,25 @@
<!--[metadata]>
+++
aliases = [
"/engine/installation/amazon/",
"/engine/installation/google/",
"/engine/installation/softlayer/",
"/engine/installation/azure/",
"/engine/installation/rackspace/",
"/engine/installation/joyent/"
]
title = "In the cloud"
description = "Cloud Installations"
keywords = ["Docker install "]
[menu.main]
identifier = "install_cloud"
parent="engine_install"
weight="-60"
+++
<![end-metadata]-->
# Install Engine in the cloud
* [Understand cloud install options and choose one](cloud.md)
* [Example: Use Docker Machine to provision cloud hosts](cloud-ex-machine-ocean.md)
* [Example: Manual install on a cloud provider](cloud-ex-aws.md)

View file

@ -1,8 +1,12 @@
<!--[metadata]>
+++
title = "Supported installations for Docker Engine"
title = "Install"
description = "Lists the installation methods"
keywords = ["Docker install "]
[menu.main]
identifier = "engine_install"
parent="engine_use"
weight="-81"
+++
<![end-metadata]-->
@ -11,24 +15,24 @@ keywords = ["Docker install "]
Docker Engine is supported on Linux, Cloud, Windows, and OS X. Installation instructions are available for the following:
## On Linux
* [Arch Linux](archlinux.md)
* [CentOS](centos.md)
* [CRUX Linux](cruxlinux.md)
* [Debian](debian.md)
* [Fedora](fedora.md)
* [FrugalWare](frugalware.md)
* [Gentoo](gentoolinux.md)
* [Oracle Linux](oracle.md)
* [Red Hat Enterprise Linux](rhel.md)
* [openSUSE and SUSE Linux Enterprise](SUSE.md)
* [Ubuntu](ubuntulinux.md)
* [Arch Linux](linux/archlinux.md)
* [CentOS](linux/centos.md)
* [CRUX Linux](linux/cruxlinux.md)
* [Debian](linux/debian.md)
* [Fedora](linux/fedora.md)
* [FrugalWare](linux/frugalware.md)
* [Gentoo](linux/gentoolinux.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)
If your linux distribution is not listed above, don't give up yet. To try out Docker on a distribution that is not listed above, go here: [Installation from binaries](binaries.md).
## On Cloud
* [Choose how to Install](cloud.md)
* [Example: Manual install on a cloud provider](cloud-ex-aws.md)
* [Example: Use Docker Machine to provision cloud hosts](cloud-ex-machine-ocean.md)
* [Choose how to Install](cloud/cloud.md)
* [Example: Manual install on a cloud provider](cloud/cloud-ex-aws.md)
* [Example: Use Docker Machine to provision cloud hosts](cloud/cloud-ex-machine-ocean.md)
## On OSX and Windows
* [Mac OS X](mac.md)
@ -38,7 +42,7 @@ If your linux distribution is not listed above, don't give up yet. To try out Do
Instructions for installing prior releases of Docker can be found in the following docker archives:
[Docker v1.7](http://docs.docker.com/v1.7/), [Docker v1.6](http://docs.docker.com/v1.6/), [Docker v1.5](http://docs.docker.com/v1.5/), and [Docker v1.4](http://docs.docker.com/v1.4/).
## Where to go After Installing
* [About Docker](../misc/index.md)
## Where to go after installing
* [About Docker Engine](../index.md)
* [Support](https://www.docker.com/support/)
* [Training](https://training.docker.com//)

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/SUSE/"]
title = "Installation on openSUSE and SUSE Linux Enterprise"
description = "Installation instructions for Docker on openSUSE and on SUSE Linux Enterprise."
keywords = ["openSUSE, SUSE Linux Enterprise, SUSE, SLE, docker, documentation, installation"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->
@ -91,7 +92,7 @@ flag is set to `yes` like so:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read the systemd article to
learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your systemd Docker daemon options](../../admin/systemd.md).
## Uninstallation
@ -113,4 +114,4 @@ You can find more details about Docker on openSUSE or SUSE Linux Enterprise in t
[Docker quick start guide](https://www.suse.com/documentation/sles-12/dockerquick/data/dockerquick.html)
on the SUSE website. The document targets SUSE Linux Enterprise, but its contents apply also to openSUSE.
Continue to the [User Guide](../userguide/index.md).
Continue to the [User Guide](../../userguide/index.md).

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/archlinux/"]
title = "Installation on Arch Linux"
description = "Installation instructions for Docker on ArchLinux."
keywords = ["arch linux, docker, documentation, installation"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->
@ -63,7 +64,7 @@ To start on system boot:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our systemd article to
learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your systemd Docker daemon options](../../admin/systemd.md).
## Running Docker with a manually-defined network

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/centos/"]
title = "Installation on CentOS"
description = "Instructions for installing Docker on CentOS"
keywords = ["Docker, Docker documentation, requirements, linux, centos, epel, docker.io, docker-io"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
weight=-4
+++
<![end-metadata]-->
@ -134,7 +135,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
>**Warning**: The `docker` group is equivalent to the `root` user; For details
>on how this impacts security in your system, see [*Docker Daemon Attack
>Surface*](../security/security.md#docker-daemon-attack-surface) for details.
>Surface*](../../security/security.md#docker-daemon-attack-surface) for details.
To create the `docker` group and add your user:
@ -160,7 +161,7 @@ To ensure Docker starts when you boot your system, do the following:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our Systemd article to
learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your Systemd Docker daemon options](../../admin/systemd.md).
## Uninstall

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/cruxlinux/"]
title = "Installation on CRUX Linux"
description = "Docker installation on CRUX Linux."
keywords = ["crux linux, Docker, documentation, installation"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/debian/"]
title = "Installation on Debian"
description = "Instructions for installing Docker on Debian."
keywords = ["Docker, Docker documentation, installation, debian"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
weight=-2
+++
<![end-metadata]-->
@ -138,7 +139,7 @@ use the `-G` flag to specify an alternative group.
> **Warning**:
> The `docker` group (or the group specified with the `-G` flag) is
> `root`-equivalent; see [*Docker Daemon Attack Surface*](../security/security.md#docker-daemon-attack-surface) details.
> `root`-equivalent; see [*Docker Daemon Attack Surface*](../../security/security.md#docker-daemon-attack-surface) details.
**Example:**
@ -180,4 +181,4 @@ You must delete the user created configuration files manually.
## What next?
Continue with the [User Guide](../userguide/index.md).
Continue with the [User Guide](../../userguide/index.md).

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/fedora/"]
title = "Installation on Fedora"
description = "Instructions for installing Docker on Fedora."
keywords = ["Docker, Docker documentation, Fedora, requirements, linux"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
weight=-3
+++
<![end-metadata]-->
@ -128,7 +129,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
>**Warning**: The `docker` group is equivalent to the `root` user; For details
>on how this impacts security in your system, see [*Docker Daemon Attack
>Surface*](../security/security.md#docker-daemon-attack-surface) for details.
>Surface*](../../security/security.md#docker-daemon-attack-surface) for details.
To create the `docker` group and add your user:
@ -154,7 +155,7 @@ To ensure Docker starts when you boot your system, do the following:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our Systemd article to
learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your Systemd Docker daemon options](../../admin/systemd.md).
## Running Docker with a manually-defined network

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/frugalware/"]
title = "Installation on FrugalWare"
description = "Installation instructions for Docker on FrugalWare."
keywords = ["frugalware linux, docker, documentation, installation"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->
@ -53,7 +54,7 @@ To start on system boot:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our systemd article to
learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your systemd Docker daemon options](../../admin/systemd.md).
## Uninstallation

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/gentoolinux/"]
title = "Installation on Gentoo"
description = "Installation instructions for Docker on Gentoo."
keywords = ["gentoo linux, docker, documentation, installation"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->
@ -99,7 +100,7 @@ To start on system boot:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our systemd article to
learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your systemd Docker daemon options](../../admin/systemd.md).
## Uninstallation

View file

@ -0,0 +1,29 @@
<!--[metadata]>
+++
title = "On Linux distributions"
description = "Lists the installation methods"
keywords = ["docker", "engine","install", "linux"]
[menu.main]
identifier = "engine_linux"
parent="engine_install"
weight="-70"
+++
<![end-metadata]-->
# Install Docker Engine on Linux
Docker Engine is supported on several Linux distributions. Installation instructions are available for the following:
* [Arch Linux](archlinux.md)
* [CentOS](centos.md)
* [CRUX Linux](cruxlinux.md)
* [Debian](debian.md)
* [Fedora](fedora.md)
* [FrugalWare](frugalware.md)
* [Gentoo](gentoolinux.md)
* [Oracle Linux](oracle.md)
* [Red Hat Enterprise Linux](rhel.md)
* [openSUSE and SUSE Linux Enterprise](SUSE.md)
* [Ubuntu](ubuntulinux.md)
If your linux distribution is not listed above, don't give up yet. To try out Docker on a distribution that is not listed above, go here: [Installation from binaries](../binaries.md).

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/oracle/"]
title = "Installation on Oracle Linux"
description = "Installation instructions for Docker on Oracle Linux."
keywords = ["Docker, Docker documentation, requirements, linux, rhel, centos, oracle, ol"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
+++
<![end-metadata]-->
@ -106,7 +107,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
>**Warning**: The `docker` group is equivalent to the `root` user; For details
>on how this impacts security in your system, see [*Docker Daemon Attack
>Surface*](../security/security.md#docker-daemon-attack-surface) for details.
>Surface*](../../security/security.md#docker-daemon-attack-surface) for details.
To create the `docker` group and add your user:
@ -149,7 +150,7 @@ $ sudo systemctl enable docker.service
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our systemd article to
learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your systemd Docker daemon options](../../admin/systemd.md).
### Use the btrfs storage engine

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/rhel/"]
title = "Installation on Red Hat Enterprise Linux"
description = "Instructions for installing Docker on Red Hat Enterprise Linux."
keywords = ["Docker, Docker documentation, requirements, linux, rhel"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
weight = -5
+++
<![end-metadata]-->
@ -126,7 +127,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
>**Warning**: The `docker` group is equivalent to the `root` user; For details
>on how this impacts security in your system, see [*Docker Daemon Attack
>Surface*](../security/security.md#docker-daemon-attack-surface) for details.
>Surface*](../../security/security.md#docker-daemon-attack-surface) for details.
To create the `docker` group and add your user:
@ -152,7 +153,7 @@ To ensure Docker starts when you boot your system, do the following:
If you need to add an HTTP Proxy, set a different directory or partition for the
Docker runtime files, or make other customizations, read our Systemd article to
learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
learn how to [customize your Systemd Docker daemon options](../../admin/systemd.md).
## Uninstall

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = [ "/engine/installation/ubuntulinux/"]
title = "Installation on Ubuntu "
description = "Instructions for installing Docker on Ubuntu. "
keywords = ["Docker, Docker documentation, requirements, apt, installation, ubuntu"]
[menu.main]
parent = "smn_linux"
parent = "engine_linux"
weight = -6
+++
<![end-metadata]-->
@ -230,7 +231,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
>**Warning**: The `docker` group is equivalent to the `root` user; For details
>on how this impacts security in your system, see [*Docker Daemon Attack
>Surface*](../security/security.md#docker-daemon-attack-surface) for details.
>Surface*](../../security/security.md#docker-daemon-attack-surface) for details.
To create the `docker` group and add your user:
@ -353,7 +354,7 @@ containers. Or, you can disable `dnsmasq` in NetworkManager. Though, disabling
The instructions below describe how to configure the Docker daemon
running on Ubuntu 14.10 or below. Ubuntu 15.04 and above use `systemd`
as the boot and service manager. Refer to [control and configure Docker
with systemd](../articles/systemd.md#custom-docker-daemon-options) to
with systemd](../../admin/systemd.md#custom-docker-daemon-options) to
configure a daemon controlled by `systemd`.
To specify a DNS server for use by Docker:

View file

@ -4,7 +4,8 @@ title = "Installation on Mac OS X"
description = "Instructions for installing Docker on OS X using boot2docker."
keywords = ["Docker, Docker documentation, requirements, boot2docker, VirtualBox, SSH, Linux, OSX, OS X, Mac"]
[menu.main]
parent = "smn_engine"
parent = "engine_install"
weight="-90"
+++
<![end-metadata]-->

View file

@ -4,7 +4,8 @@ title = "Installation on Windows"
description = "Docker installation on Microsoft Windows"
keywords = ["Docker, Docker documentation, Windows, requirements, virtualbox, boot2docker"]
[menu.main]
parent = "smn_engine"
parent = "engine_install"
weight="-80"
+++
<![end-metadata]-->

View file

@ -1,161 +0,0 @@
<!--[metadata]>
+++
draft=true
title = "Docker Engine"
description = "Release notes for Docker 1.x."
keywords = ["docker, documentation, about, technology, understanding, release"]
[menu.main]
parent = "smn_release_notes"
+++
<![end-metadata]-->
# Deprecated Features
To see the complete list of deprecated features please see the
[Deprecated Features](deprecated.md) page.
# Removed Features
The following features have been removed in this release:
* None!
# Release notes version 1.6.0
(2015-04-16)
You can view release notes for earlier version of Docker by selecting the
desired version from the drop-down list at the top right of this page. For the
formal release announcement, see [the Docker
blog](https://blog.docker.com/2015/04/docker-release-1-6/).
## Docker Engine 1.6.0 features
For a complete list of engine patches, fixes, and other improvements, see the
[merge PR on GitHub](https://github.com/docker/docker/pull/11635). You'll also
find [a changelog in the project
repository](https://github.com/docker/docker/blob/master/CHANGELOG.md).
## Docker Engine 1.6.0 features
For a complete list of engine patches, fixes, and other improvements, see the
[merge PR on GitHub](https://github.com/docker/docker/pull/11635). You'll also
find [a changelog in the project
repository](https://github.com/docker/docker/blob/master/CHANGELOG.md).
| Feature | Description |
|------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Container and Image Labels | Labels allow you to attach user-defined metadata to containers and images that can be used by your tools. For additional information on using labels, see [Apply custom metadata](https://docs.docker.com/userguide/labels-custom-metadata.md#add-labels-to-images-the-label-instruction) in the documentation. |
| Windows Client preview | The Windows Client can be used just like the Mac OS X client is today with a remote host. Our testing infrastructure was scaled out to accommodate Windows Client testing on every PR to the Engine. See the Azure blog for [details on using this new client](http://azure.microsoft.com/blog/2015/04/16/docker-client-for-windows-is-now-available). |
| Logging drivers | The new logging driver follows the exec driver and storage driver concepts already available in Engine today. There is a new option `--log-driver` to `docker run` command. See the `run` reference for a [description on how to use this option](../reference/run.md#logging-drivers-log-driver). |
| Image digests | When you pull, build, or run images, you specify them in the form `namespace/repository:tag`, or even just `repository`. In this release, you are now able to pull, run, build and refer to images by a new content addressable identifier called a “digest” with the syntax `namespace/repo@digest`. See the the command line reference for [examples of using the digest](../reference/commandline/cli.md#listing-image-digests). |
| Custom cgroups | Containers are made from a combination of namespaces, capabilities, and cgroups. Docker already supports custom namespaces and capabilities. Additionally, in this release weve added support for custom cgroups. Using the `--cgroup-parent` flag, you can pass a specific `cgroup` to run a container in. See [the command line reference for more information](../reference/commandline/cli.md#create). |
| Ulimits | You can now specify the default `ulimit` settings for all containers when configuring the daemon. For example:`docker daemon --default-ulimit nproc=1024:2048` See [Default Ulimits](../reference/commandline/cli.md#default-ulimits) in this documentation. |
| Commit and import Dockerfile | You can now make changes to images on the fly without having to re-build the entire image. The feature `commit --change` and `import --change` allows you to apply standard changes to a new image. These are expressed in the Dockerfile syntax and used to modify the image. For details on how to use these, see the [commit](../reference/commandline/cli.md#commit) and [import](../reference/commandline/cli.md#import). |
### Known issues in Engine
This section lists significant known issues present in Docker as of release date.
For an exhaustive list of issues, see [the issues list on the project
repository](https://github.com/docker/docker/issues/).
* *Unexpected File Permissions in Containers*
An idiosyncrasy in AUFS prevented permissions from propagating predictably
between upper and lower layers. This caused issues with accessing private
keys, database instances, etc. This issue was closed in this release:
[GitHub Issue 783](https://github.com/docker/docker/issues/783).
* *Docker Hub incompatible with Safari 8*
Docker Hub had multiple issues displaying on Safari 8, the default browser for
OS X 10.10 (Yosemite). Most notably, changes in the way Safari handled cookies
means that the user was repeatedly logged out.
Recently, Safari fixed the bug that was causing all the issues. If you upgrade
to Safari 8.0.5 which was just released last week and see if that fixes your
issues. You might have to flush your cookies if it doesn't work right away.
For more information, see the [Docker forum
post](https://forums.docker.com/t/new-safari-in-yosemite-issue/300).
## Docker Registry 2.0 features
This release includes Registry 2.0. The Docker Registry is a central server for
pushing and pulling images. In this release, it was completely rewritten in Go
around a new set of distribution APIs
- **Webhook notifications**: You can now configure the Registry to send Webhooks
when images are pushed. Spin off a CI build, send a notification to IRC
whatever you want! Included in the documentation is a detailed [notification
specification](https://docs.docker.com/registry/notifications/).
- **Native TLS support**: This release makes it easier to secure a registry with
TLS. This documentation includes [expanded examples of secure
deployments](https://docs.docker.com/registry/deploying/).
- **New Distribution APIs**: This release includes an expanded set of new
distribution APIs. You can read the [detailed specification
here](https://docs.docker.com/registry/spec/api/).
## Docker Compose 1.2
For a complete list of compose patches, fixes, and other improvements, see the
[changelog in the project
repository](https://github.com/docker/compose/blob/1.2.0/CHANGES.md). The
project also makes a [set of release
notes](https://github.com/docker/compose/releases/tag/1.2.0) on the project.
- **extends**: You can use `extends` to share configuration between services
with the keyword “extends”. With extends, you can refer to a service defined
elsewhere and include its configuration in a locally-defined service, while also
adding or overriding configuration as necessary. The documentation describes
[how to use extends in your
configuration](https://docs.docker.com/compose/extends/#extending-services-in-
compose).
- **Relative directory handling may cause breaking change**: Compose now treats
directories passed to build, filenames passed to `env_file` and volume host
paths passed to volumes as relative to the configuration file's directory.
Previously, they were treated as relative to the directory where you were
running `docker-compose`. In the majority of cases, the location of the
configuration file and where you ran `docker-compose` were the same directory.
Now, you can use the `-f|--file` argument to specify a configuration file in
another directory.
## Docker Swarm 0.2
You'll find the [release for download on
GitHub](https://github.com/docker/swarm/releases/tag/v0.2.0) and [the
documentation here](https://docs.docker.com/swarm/). This release includes the
following features:
- **Spread strategy**: A new strategy for scheduling containers on your cluster
which evenly spreads them over available nodes.
- **More Docker commands supported**: More progress has been made towards
supporting the complete Docker API, such as pulling and inspecting images.
- **Clustering drivers**: There are not any third-party drivers yet, but the
first steps have been made towards making a pluggable driver interface that will
make it possible to use Swarm with clustering systems such as Mesos.
## Docker Machine 0.2 Pre-release
You'll find the [release for download on
GitHub](https://github.com/docker/machine/releases) and [the documentation
here](https://docs.docker.com/machine/). For a complete list of machine changes
see [the changelog in the project
repository](https://github.com/docker/machine/blob/master/CHANGES.md#020-2015-03
-22).
- **Cleaner driver interface**: It is now much easier to write drivers for providers.
- **More reliable and consistent provisioning**: Provisioning servers is now
handled centrally by Machine instead of letting each driver individually do it.
- **Regenerate TLS certificates**: A new command has been added to regenerate a
hosts TLS certificates for good security practice and for if a hosts IP
address changes.
## Docker Hub Enterprise & Commercially Supported Docker Engine
See the [DHE and CS Docker Engine release notes](https://docs.docker.com/docker-hub-enterprise/release-notes.md).

View file

@ -1,16 +0,0 @@
<!--[metadata]>
+++
draft = true
+++
<![end-metadata]-->
# Search
*Please activate JavaScript to enable the search functionality.*
## How To Search
From here you can search these documents. Enter your search words into
the box below and click "search". Note that the search function will
automatically search for all of the words. Pages containing fewer words
won't appear in the result list.

View file

@ -1,16 +1,18 @@
<!--[metadata]>
+++
aliases = ["/engine/userguide/basics/"]
title = "Quickstart containers"
description = "Common usage and commands"
keywords = ["Examples, Usage, basic commands, docker, documentation, examples"]
[menu.main]
parent = "mn_fun_docker"
parent = "engine_use"
weight=-90
+++
<![end-metadata]-->
# Quickstart containers
# Quickstart Docker Engine
This quickstart assumes you have a working installation of Docker. To verify Docker is installed, use the following command:
This quickstart assumes you have a working installation of Docker Engine. To verify Engine is installed, use the following command:
# Check that you have a working install
$ docker info
@ -18,17 +20,17 @@ This quickstart assumes you have a working installation of Docker. To verify Doc
If you get `docker: command not found` or something like
`/var/lib/docker/repositories: permission denied` you may have an
incomplete Docker installation or insufficient privileges to access
Docker on your machine. With the default installation of Docker `docker`
Engine on your machine. With the default installation of Engine `docker`
commands need to be run by a user that is in the `docker` group or by the
`root` user.
Depending on your Docker system configuration, you may be required
Depending on your Engine system configuration, you may be required
to preface each `docker` command with `sudo`. One way to avoid having to use
`sudo` with the `docker` commands is to create a Unix group called `docker` and
add users that will be entering `docker` commands to the 'docker' group.
For more information about installing Docker or `sudo` configuration, refer to
the [installation](../installation/index.md) instructions for your operating system.
For more information about installing Docker Engine or `sudo` configuration, refer to
the [installation](installation/index.md) instructions for your operating system.
## Download a pre-built image
@ -37,7 +39,7 @@ the [installation](../installation/index.md) instructions for your operating sys
$ docker pull ubuntu
This will find the `ubuntu` image by name on
[*Docker Hub*](../userguide/dockerrepos.md#searching-for-images)
[*Docker Hub*](userguide/containers/dockerrepos.md#searching-for-images)
and download it from [Docker Hub](https://hub.docker.com) to a local
image cache.
@ -194,6 +196,6 @@ You now have an image state from which you can create new instances.
## Where to go next
* Work your way through the [Docker User Guide](../userguide/index.md)
* Read more about [*Share Images via Repositories*](../userguide/dockerrepos.md)
* Review [*Command Line*](../reference/commandline/cli.md)
* Work your way through the [Docker User Guide](userguide/index.md)
* Read more about [*Share Images via Repositories*](userguide/containers/dockerrepos.md)
* Review [*Command Line*](reference/commandline/cli.md)

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
draft = true
title = "Docker Hub API"
description = "API Documentation for the Docker Hub API"
keywords = ["API, Docker, index, REST, documentation, Docker Hub, registry"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 99
+++
<![end-metadata]-->
@ -13,4 +14,3 @@ weight = 99
This API is deprecated as of 1.7. To view the old version, see the [Docker Hub
API](https://docs.docker.com/v1.7/docker/reference/api/docker-io_api/) in the 1.7 documentation.

View file

@ -4,7 +4,8 @@ title = "docker.io accounts API"
description = "API Documentation for docker.io accounts."
keywords = ["API, Docker, accounts, REST, documentation"]
[menu.main]
parent = "mn_reference"
parent = "engine_remoteapi"
weight=90
+++
<![end-metadata]-->

View file

@ -4,8 +4,8 @@ title = "Remote API"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
weight=-4
parent = "engine_remoteapi"
weight=-99
+++
<![end-metadata]-->

View file

@ -4,7 +4,7 @@ title = "Remote API v1.14"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 7
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 7
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST, but for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
`STDIN` and `STDERR`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.15"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 6
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 6
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST, but for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
`STDIN` and `STDERR`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.16"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 5
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 5
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST, but for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
`STDIN` and `STDERR`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.17"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 4
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 4
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST, but for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
`STDIN` and `STDERR`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.18"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 3
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 3
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST, but for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
`STDIN` and `STDERR`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.19"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent = "smn_remoteapi"
parent = "engine_remoteapi"
weight = 2
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 2
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST. However, for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `stdout`,
`stdin` and `stderr`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.20"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent="smn_remoteapi"
parent="engine_remoteapi"
weight = 1
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight = 1
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST. However, for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `stdout`,
`stdin` and `stderr`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.21"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent="smn_remoteapi"
parent="engine_remoteapi"
weight=-2
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight=-2
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST. However, for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `stdout`,
`stdin` and `stderr`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.22"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent="smn_remoteapi"
parent="engine_remoteapi"
weight=-3
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight=-3
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST. However, for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `stdout`,
`stdin` and `stderr`.

View file

@ -4,7 +4,7 @@ title = "Remote API v1.23"
description = "API Documentation for Docker"
keywords = ["API, Docker, rcli, REST, documentation"]
[menu.main]
parent="smn_remoteapi"
parent="engine_remoteapi"
weight=-4
+++
<![end-metadata]-->
@ -15,7 +15,7 @@ weight=-4
- The Remote API has replaced `rcli`.
- The daemon listens on `unix:///var/run/docker.sock` but you can
[Bind Docker to another host/port or a Unix socket](../../userguide/basics.md#bind-docker-to-another-host-port-or-a-unix-socket).
[Bind Docker to another host/port or a Unix socket](../../quickstart.md#bind-docker-to-another-host-port-or-a-unix-socket).
- The API tends to be REST. However, for some complex commands, like `attach`
or `pull`, the HTTP connection is hijacked to transport `stdout`,
`stdin` and `stderr`.

View file

@ -1,5 +1,6 @@
<!--[metadata]>
+++
draft = true
title = "The Docker Hub and the Registry v1"
description = "Documentation for docker Registry and Registry API"
keywords = ["docker, registry, api, hub"]
@ -14,4 +15,4 @@ This API is deprecated as of 1.7. To view the old version, see the [go
here](hub_registry_spec.md) in
the 1.7 documentation. If you want an overview of the current features in
Docker Hub or other image management features see the [image management
overview](../../userguide/image_management.md) in the current documentation set.
overview](../../userguide/eng-image/image_management.md) in the current documentation set.

View file

@ -0,0 +1,16 @@
<!-- [metadata]>
+++
title = "API Reference"
description = "Reference"
keywords = ["Engine"]
[menu.main]
identifier="engine_remoteapi"
parent="engine_ref"
+++
<![end-metadata]-->
# API Reference
* [Docker Remote API](docker_remote_api.md)
* [Docker Remote API client libraries](remote_api_client_libraries.md)

View file

@ -1,598 +0,0 @@
<!--[metadata]>
+++
draft = true
title = "Registry v1 API"
description = "API Documentation for Docker Registry"
keywords = ["API, Docker, index, registry, REST, documentation"]
[menu.main]
parent="smn_registry_ref"
+++
<![end-metadata]-->
# Docker Registry API v1
## Introduction
- This is the REST API for the Docker Registry 1.0
- It stores the images and the graph for a set of repositories
- It does not have user accounts data
- It has no notion of user accounts or authorization
- It delegates authentication and authorization to the Index Auth
service using tokens
- It supports different storage backends (S3, cloud files, local FS)
- It doesn't have a local database
- The registry is open source: [Docker Registry](https://github.com/docker/docker-registry)
We expect that there will be multiple registries out there. To help to
grasp the context, here are some examples of registries:
- **sponsor registry**: such a registry is provided by a third-party
hosting infrastructure as a convenience for their customers and the
Docker community as a whole. Its costs are supported by the third
party, but the management and operation of the registry are
supported by Docker. It features read/write access, and delegates
authentication and authorization to the Index.
- **mirror registry**: such a registry is provided by a third-party
hosting infrastructure but is targeted at their customers only. Some
mechanism (unspecified to date) ensures that public images are
pulled from a sponsor registry to the mirror registry, to make sure
that the customers of the third-party provider can `docker pull`
those images locally.
- **vendor registry**: such a registry is provided by a software
vendor, who wants to distribute Docker images. It would be operated
and managed by the vendor. Only users authorized by the vendor would
be able to get write access. Some images would be public (accessible
for anyone), others private (accessible only for authorized users).
Authentication and authorization would be delegated to the Index.
The goal of vendor registries is to let someone do `docker pull
basho/riak1.3` and automatically push from the vendor registry
(instead of a sponsor registry); i.e., get all the convenience of a
sponsor registry, while retaining control on the asset distribution.
- **private registry**: such a registry is located behind a firewall,
or protected by an additional security layer (HTTP authorization,
SSL client-side certificates, IP address authorization...). The
registry is operated by a private entity, outside of Docker's
control. It can optionally delegate additional authorization to the
Index, but it is not mandatory.
> **Note**:
> Mirror registries and private registries which do not use the Index
> don't even need to run the registry code. They can be implemented by any
> kind of transport implementing HTTP GET and PUT. Read-only registries
> can be powered by a simple static HTTPS server.
> **Note**:
> The latter implies that while HTTP is the protocol of choice for a registry,
> multiple schemes are possible (and in some cases, trivial):
>
> - HTTP with GET (and PUT for read-write registries);
> - local mount point;
> - remote Docker addressed through SSH.
The latter would only require two new commands in Docker, e.g.,
`registryget` and `registryput`, wrapping access to the local filesystem
(and optionally doing consistency checks). Authentication and authorization
are then delegated to SSH (e.g., with public keys).
> **Note**:
> Private registry servers that expose an HTTP endpoint need to be secured with
> TLS (preferably TLSv1.2, but at least TLSv1.0). Make sure to put the CA
> certificate at /etc/docker/certs.d/my.registry.com:5000/ca.crt on the Docker
> host, so that the daemon can securely access the private registry.
> Support for SSLv3 and lower is not available due to security issues.
The default namespace for a private repository is `library`.
# Endpoints
## Images
### Get image layer
`GET /v1/images/(image_id)/layer`
Get image layer for a given `image_id`
**Example Request**:
GET /v1/images/088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c/layer HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Authorization: Token signature=123abc,repository="foo/bar",access=read
Parameters:
- **image_id** the id for the layer you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
X-Docker-Registry-Version: 0.6.0
Cookie: (Cookie provided by the Registry)
{layer binary data stream}
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Image not found
### Put image layer
`PUT /v1/images/(image_id)/layer`
Put image layer for a given `image_id`
**Example Request**:
PUT /v1/images/088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c/layer HTTP/1.1
Host: registry-1.docker.io
Transfer-Encoding: chunked
Authorization: Token signature=123abc,repository="foo/bar",access=write
{layer binary data stream}
Parameters:
- **image_id** the id for the layer you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Image not found
## Image
### Put image layer
`PUT /v1/images/(image_id)/json`
Put image for a given `image_id`
**Example Request**:
PUT /v1/images/088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c/json HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
{
id: "088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c",
parent: "aeee6396d62273d180a49c96c62e45438d87c7da4a5cf5d2be6bee4e21bc226f",
created: "2013-04-30T17:46:10.843673+03:00",
container: "8305672a76cc5e3d168f97221106ced35a76ec7ddbb03209b0f0d96bf74f6ef7",
container_config: {
Hostname: "host-test",
User: "",
Memory: 0,
MemorySwap: 0,
AttachStdin: false,
AttachStdout: false,
AttachStderr: false,
Tty: false,
OpenStdin: false,
StdinOnce: false,
Env: null,
Cmd: [
"/bin/bash",
"-c",
"apt-get -q -yy -f install libevent-dev"
],
Dns: null,
Image: "imagename/blah",
Volumes: { },
VolumesFrom: ""
},
docker_version: "0.1.7"
}
Parameters:
- **image_id** the id for the layer you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
- **401** Requires authorization
### Get image layer
`GET /v1/images/(image_id)/json`
Get image for a given `image_id`
**Example Request**:
GET /v1/images/088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c/json HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
Parameters:
- **image_id** the id for the layer you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
X-Docker-Size: 456789
X-Docker-Checksum: b486531f9a779a0c17e3ed29dae8f12c4f9e89cc6f0bc3c38722009fe6857087
{
id: "088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c",
parent: "aeee6396d62273d180a49c96c62e45438d87c7da4a5cf5d2be6bee4e21bc226f",
created: "2013-04-30T17:46:10.843673+03:00",
container: "8305672a76cc5e3d168f97221106ced35a76ec7ddbb03209b0f0d96bf74f6ef7",
container_config: {
Hostname: "host-test",
User: "",
Memory: 0,
MemorySwap: 0,
AttachStdin: false,
AttachStdout: false,
AttachStderr: false,
Tty: false,
OpenStdin: false,
StdinOnce: false,
Env: null,
Cmd: [
"/bin/bash",
"-c",
"apt-get -q -yy -f install libevent-dev"
],
Dns: null,
Image: "imagename/blah",
Volumes: { },
VolumesFrom: ""
},
docker_version: "0.1.7"
}
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Image not found
## Ancestry
### Get image ancestry
`GET /v1/images/(image_id)/ancestry`
Get ancestry for an image given an `image_id`
**Example Request**:
GET /v1/images/088b4505aa3adc3d35e79c031fa126b403200f02f51920fbd9b7c503e87c7a2c/ancestry HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
Parameters:
- **image_id** the id for the layer you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
["088b4502f51920fbd9b7c503e87c7a2c05aa3adc3d35e79c031fa126b403200f",
"aeee63968d87c7da4a5cf5d2be6bee4e21bc226fd62273d180a49c96c62e4543",
"bfa4c5326bc764280b0863b46a4b20d940bc1897ef9c1dfec060604bdc383280",
"6ab5893c6927c15a15665191f2c6cf751f5056d8b95ceee32e43c5e8a3648544"]
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Image not found
## Tags
### List repository tags
`GET /v1/repositories/(namespace)/(repository)/tags`
Get all of the tags for the given repo.
**Example Request**:
GET /v1/repositories/reynholm/help-system-server/tags HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
Cookie: (Cookie provided by the Registry)
Parameters:
- **namespace** namespace for the repo
- **repository** name for the repo
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
{
"latest": "9e89cc6f0bc3c38722009fe6857087b486531f9a779a0c17e3ed29dae8f12c4f",
"0.1.1": "b486531f9a779a0c17e3ed29dae8f12c4f9e89cc6f0bc3c38722009fe6857087"
}
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Repository not found
### Get image id for a particular tag
`GET /v1/repositories/(namespace)/(repository)/tags/(tag*)`
Get a tag for the given repo.
**Example Request**:
GET /v1/repositories/reynholm/help-system-server/tags/latest HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
Cookie: (Cookie provided by the Registry)
Parameters:
- **namespace** namespace for the repo
- **repository** name for the repo
- **tag** name of tag you want to get
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
"9e89cc6f0bc3c38722009fe6857087b486531f9a779a0c17e3ed29dae8f12c4f"
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Tag not found
### Delete a repository tag
`DELETE /v1/repositories/(namespace)/(repository)/tags/(tag*)`
Delete the tag for the repo
**Example Request**:
DELETE /v1/repositories/reynholm/help-system-server/tags/latest HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
Parameters:
- **namespace** namespace for the repo
- **repository** name for the repo
- **tag** name of tag you want to delete
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Tag not found
### Set a tag for a specified image id
`PUT /v1/repositories/(namespace)/(repository)/tags/(tag*)`
Put a tag for the given repo.
**Example Request**:
PUT /v1/repositories/reynholm/help-system-server/tags/latest HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
"9e89cc6f0bc3c38722009fe6857087b486531f9a779a0c17e3ed29dae8f12c4f"
Parameters:
- **namespace** namespace for the repo
- **repository** name for the repo
- **tag** name of tag you want to add
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
- **400** Invalid data
- **401** Requires authorization
- **404** Image not found
## Repositories
### Delete a repository
`DELETE /v1/repositories/(namespace)/(repository)/`
Delete a repository
**Example Request**:
DELETE /v1/repositories/reynholm/help-system-server/ HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
Cookie: (Cookie provided by the Registry)
""
Parameters:
- **namespace** namespace for the repo
- **repository** name for the repo
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
- **401** Requires authorization
- **404** Repository not found
## Search
If you need to search the index, this is the endpoint you would use.
`GET /v1/search`
Search the Index given a search term. It accepts
[GET](http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html#sec9.3)
only.
**Example request**:
GET /v1/search?q=search_term&page=1&n=25 HTTP/1.1
Host: index.docker.io
Accept: application/json
Query Parameters:
- **q** what you want to search for
- **n** - number of results you want returned per page (default: 25, min:1, max:100)
- **page** - page number of results
**Example response**:
HTTP/1.1 200 OK
Vary: Accept
Content-Type: application/json
{"num_pages": 1,
"num_results": 3,
"results" : [
{"name": "ubuntu", "description": "An ubuntu image..."},
{"name": "centos", "description": "A centos image..."},
{"name": "fedora", "description": "A fedora image..."}
],
"page_size": 25,
"query":"search_term",
"page": 1
}
Response Items:
- **num_pages** - Total number of pages returned by query
- **num_results** - Total number of results returned by query
- **results** - List of results for the current page
- **page_size** - How many results returned per page
- **query** - Your search term
- **page** - Current page number
Status Codes:
- **200** no error
- **500** server error
## Status
### Status check for registry
`GET /v1/_ping`
Check status of the registry. This endpoint is also used to
determine if the registry supports SSL.
**Example Request**:
GET /v1/_ping HTTP/1.1
Host: registry-1.docker.io
Accept: application/json
Content-Type: application/json
""
**Example Response**:
HTTP/1.1 200
Vary: Accept
Content-Type: application/json
X-Docker-Registry-Version: 0.6.0
""
Status Codes:
- **200** OK
## Authorization
This is where we describe the authorization process, including the
tokens and cookies.

View file

@ -1,49 +0,0 @@
<!--[metadata]>
+++
draft = true
title = "Registry API v1 client libraries"
description = "Various client libraries available to use with the Docker registry API"
keywords = ["API, Docker, index, registry, REST, documentation, clients, C#, Erlang, Go, Groovy, Java, JavaScript, Perl, PHP, Python, Ruby, Rust, Scala"]
[menu.main]
parent="smn_registry_ref"
+++
<![end-metadata]-->
# Docker Registry v1 API client libraries
These libraries have not been tested by the Docker maintainers for
compatibility. Please file issues with the library owners. If you find
more library implementations, please submit a PR with an update to this page
or open an issue in the [Docker](https://github.com/docker/docker/issues)
project and we will add the libraries here.
<table border="1" class="docutils">
<colgroup>
<col width="24%">
<col width="17%">
<col width="48%">
<col width="11%">
</colgroup>
<thead valign="bottom">
<tr><th class="head">Language/Framework</th>
<th class="head">Name</th>
<th class="head">Repository</th>
<th class="head">Status</th>
</tr>
</thead>
<tbody valign = "top">
<tr>
<td>JavaScript (AngularJS) <strong>WebUI</strong></td>
<td>docker-registry-frontend</td>
<td><a class="reference external" href="https://github.com/kwk/docker-registry-frontend">https://github.com/kwk/docker-registry-frontend</a></td>
<td>Active</td>
</tr>
<tr>
<td>Go</td>
<td>docker-reg-client</td>
<td><a class="reference external" href="https://github.com/CenturyLinkLabs/docker-reg-client">https://github.com/CenturyLinkLabs/docker-reg-client</a></td>
<td>Active</td>
</tr>
</tbody>
</table>

View file

@ -4,7 +4,8 @@ title = "Remote API client libraries"
description = "Various client libraries available to use with the Docker remote API"
keywords = ["API, Docker, index, registry, REST, documentation, clients, C#, Erlang, Go, Groovy, Java, JavaScript, Perl, PHP, Python, Ruby, Rust, Scala"]
[menu.main]
parent="mn_reference"
parent="engine_remoteapi"
weight = 90
+++
<![end-metadata]-->

View file

@ -4,7 +4,8 @@ title = "Dockerfile reference"
description = "Dockerfiles use a simple DSL which allows you to automate the steps you would normally manually take to create an image."
keywords = ["builder, docker, Dockerfile, automation, image creation"]
[menu.main]
parent = "mn_reference"
parent = "engine_ref"
weight=-90
+++
<![end-metadata]-->
@ -18,7 +19,7 @@ instructions in succession.
This page describes the commands you can use in a `Dockerfile`. When you are
done reading this page, refer to the [`Dockerfile` Best
Practices](../articles/dockerfile_best-practices.md) for a tip-oriented guide.
Practices](../userguide/eng-image/dockerfile_best-practices.md) for a tip-oriented guide.
## Usage
@ -80,7 +81,7 @@ instructions.
Whenever possible, Docker will re-use the intermediate images (cache),
to accelerate the `docker build` process significantly. This is indicated by
the `Using cache` message in the console output.
(For more information, see the [Build cache section](../articles/dockerfile_best-practices.md#build-cache)) in the
(For more information, see the [Build cache section](../userguide/eng-image/dockerfile_best-practices.md#build-cache)) in the
`Dockerfile` best practices guide:
$ docker build -t svendowideit/ambassador .
@ -99,7 +100,7 @@ the `Using cache` message in the console output.
Successfully built 7ea8aef582cc
When you're done with your build, you're ready to look into [*Pushing a
repository to its registry*](../userguide/dockerrepos.md#contributing-to-docker-hub).
repository to its registry*](../userguide/containers/dockerrepos.md#contributing-to-docker-hub).
## Format
@ -298,7 +299,7 @@ Or
The `FROM` instruction sets the [*Base Image*](glossary.md#base-image)
for subsequent instructions. As such, a valid `Dockerfile` must have `FROM` as
its first instruction. The image can be any valid image it is especially easy
to start by **pulling an image** from the [*Public Repositories*](../userguide/dockerrepos.md).
to start by **pulling an image** from the [*Public Repositories*](../userguide/containers/dockerrepos.md).
- `FROM` must be the first non-comment instruction in the `Dockerfile`.
@ -369,7 +370,7 @@ cache for `RUN` instructions can be invalidated by using the `--no-cache`
flag, for example `docker build --no-cache`.
See the [`Dockerfile` Best Practices
guide](../articles/dockerfile_best-practices.md#build-cache) for more information.
guide](../userguide/eng-image/dockerfile_best-practices.md#build-cache) for more information.
The cache for `RUN` instructions can be invalidated by `ADD` instructions. See
[below](#add) for details.
@ -608,7 +609,7 @@ of whether or not the file has changed and the cache should be updated.
> following instructions from the Dockerfile if the contents of `<src>` have
> changed. This includes invalidating the cache for `RUN` instructions.
> See the [`Dockerfile` Best Practices
guide](../articles/dockerfile_best-practices.md#build-cache) for more information.
guide](../userguide/eng-image/dockerfile_best-practices.md#build-cache) for more information.
`ADD` obeys the following rules:
@ -959,7 +960,7 @@ containers. The value can be a JSON array, `VOLUME ["/var/log/"]`, or a plain
string with multiple arguments, such as `VOLUME /var/log` or `VOLUME /var/log
/var/db`. For more information/examples and mounting instructions via the
Docker client, refer to
[*Share Directories via Volumes*](../userguide/dockervolumes.md#mount-a-host-directory-as-a-data-volume)
[*Share Directories via Volumes*](../userguide/containers/dockervolumes.md#mount-a-host-directory-as-a-data-volume)
documentation.
The `docker run` command initializes the newly created volume with any data

View file

@ -23,7 +23,7 @@ the container, `docker export` will export the contents of the *underlying*
directory, not the contents of the volume.
Refer to [Backup, restore, or migrate data
volumes](../../userguide/dockervolumes.md#backup-restore-or-migrate-data-volumes) in
volumes](../../userguide/containers/dockervolumes.md#backup-restore-or-migrate-data-volumes) in
the user guide for examples on exporting data in a volume.
## Examples

View file

@ -1,11 +1,12 @@
<!-- [metadata]>
+++
title = "Docker Engine Commands"
title = "Command line reference"
description = "Docker's CLI command description and usage"
keywords = ["Docker, Docker documentation, CLI, command line"]
[menu.main]
identifier= "smn_cli"
parent = "mn_reference"
parent = "engine_ref"
weight=-70
+++
<![end-metadata]-->

View file

@ -21,7 +21,7 @@ parent = "smn_cli"
Search [Docker Hub](https://hub.docker.com) for images
See [*Find Public Images on Docker Hub*](../../userguide/dockerrepos.md#searching-for-images) for
See [*Find Public Images on Docker Hub*](../../userguide/containers/dockerrepos.md#searching-for-images) for
more details on finding shared images from the command line.
> **Note:**

View file

@ -17,4 +17,4 @@ parent = "smn_cli"
--help Print usage
You can group your images together using names and tags, and then upload them
to [*Share Images via Repositories*](../../userguide/dockerrepos.md#contributing-to-docker-hub).
to [*Share Images via Repositories*](../../userguide/containers/dockerrepos.md#contributing-to-docker-hub).

18
docs/reference/index.md Normal file
View file

@ -0,0 +1,18 @@
<!-- [metadata]>
+++
title = "Engine reference"
description = "Docker Engine reference"
keywords = ["Engine"]
[menu.main]
parent="engine_use"
identifier="engine_ref"
weight=70
+++
<![end-metadata]-->
# Engine reference
* [Dockerfile reference](builder.md)
* [Docker run reference](run.md)
* [Command line reference](commandline/index.md)
* [API Reference](api/index.md)

View file

@ -4,7 +4,8 @@ title = "Docker run reference"
description = "Configure containers at runtime"
keywords = ["docker, run, configure, runtime"]
[menu.main]
parent = "mn_reference"
parent = "engine_ref"
weight=-80
+++
<![end-metadata]-->
@ -1195,7 +1196,7 @@ container's logging driver. The following options are supported:
The `docker logs` command is available only for the `json-file` and `journald`
logging drivers. For detailed information on working with logging drivers, see
[Configure a logging driver](logging/overview.md).
[Configure a logging driver](../admin/logging/overview.md).
## Overriding Dockerfile image defaults
@ -1383,7 +1384,7 @@ Similarly the operator can set the **hostname** with `-h`.
--volumes-from="": Mount all volumes from the given container(s)
> **Note**:
> The auto-creation of the host path has been [*deprecated*](../misc/deprecated.md#auto-creating-missing-host-paths-for-bind-mounts).
> The auto-creation of the host path has been [*deprecated*](../deprecated.md#auto-creating-missing-host-paths-for-bind-mounts).
> **Note**:
> When using systemd to manage the Docker daemon's start and stop, in the systemd
@ -1395,7 +1396,7 @@ Similarly the operator can set the **hostname** with `-h`.
The volumes commands are complex enough to have their own documentation
in section [*Managing data in
containers*](../userguide/dockervolumes.md). A developer can define
containers*](../userguide/containers/dockervolumes.md). A developer can define
one or more `VOLUME`'s associated with an image, but only the operator
can give access from one container to another (or from a container to a
volume mounted on the host).

View file

@ -1,6 +1,6 @@
<!--[metadata]>
+++
aliases = ["/articles/certificates/"]
aliases = ["/engine/articles/certificates/"]
title = "Using certificates for repository client verification"
description = "How to set up and use certificates with a registry to verify access"
keywords = ["Usage, registry, repository, client, root, certificate, docker, apache, ssl, tls, documentation, examples, articles, tutorials"]

View file

@ -1,15 +1,15 @@
<!-- [metadata]>
+++
title = "Work with Docker security"
title = "Secure Engine"
description = "Sec"
keywords = ["seccomp, security, docker, documentation"]
[menu.main]
identifier="smn_secure_docker"
parent= "mn_use_docker"
parent= "engine_use"
+++
<![end-metadata]-->
# Work with Docker security
# Secure Engine
This section discusses the security features you can configure and use within your Docker Engine installation.

View file

@ -1,10 +1,12 @@
<!--[metadata]>
+++
aliases = ["/introduction/understanding-docker/"]
title = "Understand the architecture"
description = "Docker explained in depth"
keywords = ["docker, introduction, documentation, about, technology, understanding"]
[menu.main]
parent = "mn_use_docker"
parent = "engine_use"
weight = -82
+++
<![end-metadata]-->
@ -88,7 +90,7 @@ run on the same system, or you can connect a Docker client to a remote Docker
daemon. The Docker client and daemon communicate via sockets or through a
RESTful API.
![Docker Architecture Diagram](../article-img/architecture.svg)
![Docker Architecture Diagram](article-img/architecture.svg)
### The Docker daemon
As shown in the diagram above, the Docker daemon runs on a host machine. The
@ -284,9 +286,7 @@ or Solaris Zones.
## Next steps
### Installing Docker
Visit the [installation section](../installation/index.md#installation).
Visit the [installation section](installation/index.md#installation).
### The Docker user guide
[Learn Docker in depth](../userguide/index.md).
[Learn Docker in depth](userguide/index.md).

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/userguide/dockerimages/"]
title = "Build your own images"
description = "How to work with Docker images."
keywords = ["documentation, docs, the docker guide, docker guide, docker, docker platform, docker.io, Docker images, Docker image, image management, Docker repos, Docker repositories, docker, docker tag, docker tags, Docker Hub, collaboration"]
[menu.main]
parent = "smn_containers"
parent = "engine_learn"
weight = -4
+++
<![end-metadata]-->
@ -471,10 +472,10 @@ You can then create a container from our new image.
> This is just a brief introduction to creating images. We've
> skipped a whole bunch of other instructions that you can use. We'll see more of
> those instructions in later sections of the Guide or you can refer to the
> [`Dockerfile`](../reference/builder.md) reference for a
> [`Dockerfile`](../../reference/builder.md) reference for a
> detailed description and examples of every instruction.
> To help you write a clear, readable, maintainable `Dockerfile`, we've also
> written a [`Dockerfile` Best Practices guide](../articles/dockerfile_best-practices.md).
> written a [`Dockerfile` Best Practices guide](../eng-image/dockerfile_best-practices.md).
## Setting tags on an image

View file

@ -1,10 +1,11 @@
<!--[metadata]>
+++
aliases = ["/engine/userguide/dockerizing/"]
title = "Hello world in a container"
description = "A simple 'Hello world' exercise that introduced you to Docker."
keywords = ["docker guide, docker, docker platform, how to, dockerize, dockerizing apps, dockerizing applications, container, containers"]
[menu.main]
parent="smn_containers"
parent="engine_learn"
weight=-6
+++
<![end-metadata]-->

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