diff --git a/docs/README.md b/docs/README.md index ccf306dbde..96ded0c51a 100644 --- a/docs/README.md +++ b/docs/README.md @@ -41,7 +41,7 @@ on other branches by special arrangement with the Docker maintainers. If you are a new or beginner contributor, we encourage you to read through the [our detailed contributors -guide](https://docs.docker.com/project/who-written-for/). The guide explains in +guide](who-written-for.md). The guide explains in detail, with examples, how to contribute. If you are an experienced contributor this quickstart should be enough to get you started. @@ -89,7 +89,7 @@ own. 6. Check your writing for style and mechanical errors. Use our [documentation style - guide](https://docs.docker.com/project/doc-style/) to check style. There are + guide](doc-style.md) to check style. There are several [good grammar and spelling online checkers](http://www.hemingwayapp.com/) that can check your writing mechanics. @@ -109,7 +109,7 @@ links that are referenced in the documentation—there should be none. ## Style guide If you have questions about how to write for Docker's documentation, please see -the [style guide](project/doc-style.md). The style guide provides +the [style guide](doc-style.md). The style guide provides guidance about grammar, syntax, formatting, styling, language, or tone. If something isn't clear in the guide, please submit an issue to let us know or submit a pull request to help us improve it. diff --git a/docs/extend/index.md b/docs/extend/index.md index fd847dd912..61afb720ca 100644 --- a/docs/extend/index.md +++ b/docs/extend/index.md @@ -15,7 +15,7 @@ weight = 6 Currently, you can extend Docker by adding a plugin. This section contains the following topics: -* [Understand Docker plugins](/extend/plugins.md) -* [Write a volume plugin](/extend/plugins_volume.md) -* [Write a network plugin](/extend/plugins_network.md) -* [Docker plugin API](/extend/plugin_api.md) +* [Understand Docker plugins](plugins.md) +* [Write a volume plugin](plugins_volume.md) +* [Write a network plugin](plugins_network.md) +* [Docker plugin API](plugin_api.md) diff --git a/docs/extend/plugin_api.md b/docs/extend/plugin_api.md index 7109aa7def..8e2862f6cb 100644 --- a/docs/extend/plugin_api.md +++ b/docs/extend/plugin_api.md @@ -16,7 +16,7 @@ Docker Engine. This page is intended for people who want to develop their own Docker plugin. If you just want to learn about or use Docker plugins, look -[here](/extend/plugins). +[here](plugins.md). ## What plugins are diff --git a/docs/extend/plugins.md b/docs/extend/plugins.md index c526773958..e04de760d3 100644 --- a/docs/extend/plugins.md +++ b/docs/extend/plugins.md @@ -17,9 +17,9 @@ plugins. ## Types of plugins Plugins extend Docker's functionality. They come in specific types. For -example, a [volume plugin](/extend/plugins_volume.md) might enable Docker +example, a [volume plugin](plugins_volume.md) might enable Docker volumes to persist across multiple Docker hosts and a -[network plugin](/extend/plugins_network.md) might provide network plumbing +[network plugin](plugins_network.md) might provide network plumbing using a favorite networking technology, such as vxlan overlay, ipvlan, EVPN, etc. Currently Docker supports volume and network driver plugins. In the future it @@ -73,4 +73,4 @@ of the plugin for help. The Docker team may not be able to assist you. ## Writing a plugin If you are interested in writing a plugin for Docker, or seeing how they work -under the hood, see the [docker plugins reference](/extend/plugin_api). +under the hood, see the [docker plugins reference](plugin_api.md). diff --git a/docs/extend/plugins_network.md b/docs/extend/plugins_network.md index c2175d2c4f..335ee9d04a 100644 --- a/docs/extend/plugins_network.md +++ b/docs/extend/plugins_network.md @@ -1,10 +1,21 @@ + + # Docker network driver plugins -Docker supports network driver plugins via -[LibNetwork](https://github.com/docker/libnetwork). Network driver plugins are -implemented as "remote drivers" for LibNetwork, which shares plugin -infrastructure with Docker. In effect this means that network driver plugins -are activated in the same way as other plugins, and use the same kind of +Docker supports network driver plugins via +[LibNetwork](https://github.com/docker/libnetwork). Network driver plugins are +implemented as "remote drivers" for LibNetwork, which shares plugin +infrastructure with Docker. In effect this means that network driver plugins +are activated in the same way as other plugins, and use the same kind of protocol. ## Using network driver plugins @@ -18,7 +29,7 @@ commands. For example, docker network create -d weave mynet -Some network driver plugins are listed in [plugins.md](/docs/extend/plugins.md) +Some network driver plugins are listed in [plugins](plugins.md) The network thus created is owned by the plugin, so subsequent commands referring to that network will also be run through the plugin such as, diff --git a/docs/extend/plugins_volume.md b/docs/extend/plugins_volume.md index 41c4dd2194..6ab4bfbd7f 100644 --- a/docs/extend/plugins_volume.md +++ b/docs/extend/plugins_volume.md @@ -12,7 +12,7 @@ parent = "mn_extend" 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](/extend/plugins) +the lifetime of a single Docker host. See the [plugin documentation](plugins.md) for more information. # Command-line changes diff --git a/docs/reference/builder.md b/docs/reference/builder.md index 34a4fef0ef..f022d51d1f 100644 --- a/docs/reference/builder.md +++ b/docs/reference/builder.md @@ -18,11 +18,11 @@ 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) for a tip-oriented guide. +Practices](../articles/dockerfile_best-practices.md) for a tip-oriented guide. ## Usage -The [`docker build`](/reference/commandline/build/) command builds an image from +The [`docker build`](commandline/build.md) command builds an image from a `Dockerfile` and a *context*. The build's context is the files at a specified location `PATH` or `URL`. The `PATH` is a directory on your local filesystem. The `URL` is a the location of a Git repository. @@ -75,7 +75,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/#build-cache)) in the +(For more information, see the [Build cache section](../articles/dockerfile_best-practices.md#build-cache)) in the `Dockerfile` best practices guide: $ docker build -t SvenDowideit/ambassador . @@ -92,7 +92,7 @@ the `Using cache` message in the console output. Successfully built 1a5ffc17324d When you're done with your build, you're ready to look into [*Pushing a -repository to its registry*]( /userguide/dockerrepos/#contributing-to-docker-hub). +repository to its registry*](../userguide/dockerrepos.md#contributing-to-docker-hub). ## Format @@ -106,7 +106,7 @@ be UPPERCASE in order to distinguish them from arguments more easily. Docker runs the instructions in a `Dockerfile` in order. **The first instruction must be \`FROM\`** in order to specify the [*Base -Image*](/reference/glossary/#base-image) from which you are building. +Image*](glossary.md#base-image) from which you are building. Docker will treat lines that *begin* with `#` as a comment. A `#` marker anywhere else in the line will @@ -283,11 +283,10 @@ Or FROM @ -The `FROM` instruction sets the [*Base Image*](/reference/glossary/#base-image) +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). +to start by **pulling an image** from the [*Public Repositories*](../userguide/dockerrepos.md). - `FROM` must be the first non-comment instruction in the `Dockerfile`. @@ -358,7 +357,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/#build-cache) for more information. +guide](../articles/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. @@ -488,14 +487,14 @@ To view an image's labels, use the `docker inspect` command. The `EXPOSE` instructions informs Docker that the container will listen on the specified network ports at runtime. Docker uses this information to interconnect containers using links (see the [Docker User -Guide](/userguide/dockerlinks)) and to determine which ports to expose to the -host when [using the -P flag](/reference/run/#expose-incoming-ports). +Guide](../userguide/dockerlinks.md) and to determine which ports to expose to the +host when [using the -P flag](run.md#expose-incoming-ports). > **Note**: > `EXPOSE` doesn't define which ports can be exposed to the host or make ports > accessible from the host by default. To expose ports to the host, at runtime, -> [use the `-p` flag](/userguide/dockerlinks) or -> [the -P flag](/reference/run/#expose-incoming-ports). +> [use the `-p` flag](../userguide/dockerlinks.md) or +> [the -P flag](run.md#expose-incoming-ports). ## ENV @@ -595,7 +594,7 @@ of whether or not the file has changed and the cache should be updated. > following instructions from the Dockerfile if the contents of `` have > changed. This includes invalidating the cache for `RUN` instructions. > See the [`Dockerfile` Best Practices -guide](/articles/dockerfile_best-practices/#build-cache) for more information. +guide](../articles/dockerfile_best-practices.md#build-cache) for more information. `ADD` obeys the following rules: @@ -938,7 +937,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/#mount-a-host-directory-as-a-data-volume) +[*Share Directories via Volumes*](../userguide/dockervolumes.md#mount-a-host-directory-as-a-data-volume) documentation. The `docker run` command initializes the newly created volume with any data @@ -1191,7 +1190,7 @@ or a signal name in the format SIGNAME, for instance SIGKILL. ## Dockerfile examples Below you can see some examples of Dockerfile syntax. If you're interested in -something more realistic, take a look at the list of [Dockerization examples](/examples/). +something more realistic, take a look at the list of [Dockerization examples](../examples/). ``` # Nginx diff --git a/docs/reference/commandline/build.md b/docs/reference/commandline/build.md index 83b405cd6d..94d2cc764e 100644 --- a/docs/reference/commandline/build.md +++ b/docs/reference/commandline/build.md @@ -37,7 +37,7 @@ parent = "smn_cli" Builds Docker images from a Dockerfile and a "context". A build's context is the files located in the specified `PATH` or `URL`. The build process can refer to any of the files in the context. For example, your build can use an -[*ADD*](/reference/builder/#add) instruction to reference a file in the +[*ADD*](../builder.md#add) instruction to reference a file in the context. The `URL` parameter can specify the location of a Git repository; the repository @@ -93,7 +93,7 @@ In most cases, it's best to put each Dockerfile in an empty directory. Then, add to that directory only the files needed for building the Dockerfile. To increase the build's performance, you can exclude files and directories by adding a `.dockerignore` file to that directory as well. For information on -creating one, see the [.dockerignore file](/reference/builder#dockerignore-file). +creating one, see the [.dockerignore file](../builder.md#dockerignore-file). If the Docker client loses connection to the daemon, the build is canceled. This happens if you interrupt the Docker client with `ctrl-c` or if the Docker @@ -124,7 +124,7 @@ There should be informational output of the reason for failure output to See also: -[*Dockerfile Reference*](/reference/builder). +[*Dockerfile Reference*](../builder.md). ## Examples @@ -160,7 +160,7 @@ where to find the files for the "context" of the build on the Docker daemon. Remember that the daemon could be running on a remote machine and that no parsing of the Dockerfile happens at the client side (where you're running `docker build`). That means that *all* the files at `PATH` get sent, not just -the ones listed to [*ADD*](/reference/builder/#add) in the Dockerfile. +the ones listed to [*ADD*](../builder.md#add) in the Dockerfile. The transfer of context from the local machine to the Docker daemon is what the `docker` client means when you see the "Sending build context" message. @@ -191,7 +191,7 @@ you must use `--rm=false`. This does not affect the build cache. This example shows the use of the `.dockerignore` file to exclude the `.git` directory from the context. Its effect can be seen in the changed size of the uploaded context. The builder reference contains detailed information on -[creating a .dockerignore file](../../builder/#dockerignore-file) +[creating a .dockerignore file](../builder.md#dockerignore-file) $ docker build -t vieux/apache:2.0 . @@ -250,11 +250,11 @@ the command line. When `docker build` is run with the `--cgroup-parent` option the containers used in the build will be run with the [corresponding `docker run` -flag](/reference/run/#specifying-custom-cgroups). +flag](../run.md#specifying-custom-cgroups). Using the `--ulimit` option with `docker build` will cause each build step's container to be started using those [`--ulimit` -flag values](/reference/run/#setting-ulimits-in-a-container). +flag values](../run.md#setting-ulimits-in-a-container). You can use `ENV` instructions in a Dockerfile to define variable values. These values persist in the built image. However, often @@ -273,4 +273,4 @@ Dockerfile. Also, these values don't persist in the intermediate or final images like `ENV` values do. For detailed information on using `ARG` and `ENV` instructions, see the -[Dockerfile reference](/reference/builder). +[Dockerfile reference](../builder.md). diff --git a/docs/reference/commandline/cli.md b/docs/reference/commandline/cli.md index bef1d9e61d..d2218667d7 100644 --- a/docs/reference/commandline/cli.md +++ b/docs/reference/commandline/cli.md @@ -31,7 +31,7 @@ each `docker` command with `sudo`. To avoid having to use `sudo` with the `docker` and add users to it. For more information about installing Docker or `sudo` configuration, refer to -the [installation](/installation) instructions for your operating system. +the [installation](../../installation) instructions for your operating system. ## Environment variables @@ -98,7 +98,7 @@ The property `psFormat` specifies the default format for `docker ps` output. When the `--format` flag is not provided with the `docker ps` command, Docker's client uses this property. If this property is not set, the client falls back to the default table format. For a list of supported formatting -directives, see the [**Formatting** section in the `docker ps` documentation](../ps) +directives, see the [**Formatting** section in the `docker ps` documentation](ps.md) Following is a sample `config.json` file: diff --git a/docs/reference/commandline/create.md b/docs/reference/commandline/create.md index c705919953..3324fc2818 100644 --- a/docs/reference/commandline/create.md +++ b/docs/reference/commandline/create.md @@ -83,8 +83,7 @@ This is useful when you want to set up a container configuration ahead of time so that it is ready to start when you need it. The initial status of the new container is `created`. -Please see the [run command](/reference/commandline/run) section and the [Docker run reference]( -/reference/run/) for more details. +Please see the [run command](run.md) section and the [Docker run reference](run.md) for more details. ## Examples diff --git a/docs/reference/commandline/daemon.md b/docs/reference/commandline/daemon.md index 94b3df0c66..657b8d9778 100644 --- a/docs/reference/commandline/daemon.md +++ b/docs/reference/commandline/daemon.md @@ -73,7 +73,7 @@ To run the daemon with debug output, use `docker daemon -D`. ## Daemon socket option -The Docker daemon can listen for [Docker Remote API](/reference/api/docker_remote_api/) +The Docker daemon can listen for [Docker Remote API](../api/docker_remote_api.md) requests via three different types of Socket: `unix`, `tcp`, and `fd`. By default, a `unix` domain socket (or IPC socket) is created at @@ -83,7 +83,7 @@ membership. If you need to access the Docker daemon remotely, you need to enable the `tcp` Socket. Beware that the default setup provides un-encrypted and un-authenticated direct access to the Docker daemon - and should be secured -either using the [built in HTTPS encrypted socket](/articles/https/), or by +either using the [built in HTTPS encrypted socket](../../articles/https/), or by putting a secure web proxy in front of it. You can listen on port `2375` on all network interfaces with `-H tcp://0.0.0.0:2375`, or on a particular network interface using its IP address: `-H tcp://192.168.59.103:2375`. It is diff --git a/docs/reference/commandline/export.md b/docs/reference/commandline/export.md index 49eb1ae047..96bf544733 100644 --- a/docs/reference/commandline/export.md +++ b/docs/reference/commandline/export.md @@ -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/#backup-restore-or-migrate-data-volumes) in +volumes](../../userguide/dockervolumes.md#backup-restore-or-migrate-data-volumes) in the user guide for examples on exporting data in a volume. ## Examples diff --git a/docs/reference/commandline/index.md b/docs/reference/commandline/index.md index d9216780f6..ef99b91168 100644 --- a/docs/reference/commandline/index.md +++ b/docs/reference/commandline/index.md @@ -12,74 +12,74 @@ parent = "mn_reference" # The Docker commands -This section contains reference information on using Docker's command line client. Each command has a reference page along with samples. If you are unfamiliar with the command line, you should start by reading about how to ["Use the Docker command line"](cli). +This section contains reference information on using Docker's command line client. Each command has a reference page along with samples. If you are unfamiliar with the command line, you should start by reading about how to ["Use the Docker command line"](cli.md). -You start the Docker daemon with the command line. How you start the daemon affects your Docker containers. For that reason you should also make sure to read the [`daemon`](daemon) reference page. +You start the Docker daemon with the command line. How you start the daemon affects your Docker containers. For that reason you should also make sure to read the [`daemon`](daemon.md) reference page. ### Docker management commands -* [daemon](daemon) -* [info](info) -* [inspect](inspect) -* [version](version) +* [daemon](daemon.md) +* [info](info.md) +* [inspect](inspect.md) +* [version](version.md) ### Image commands -* [build](build) -* [commit](commit) -* [export](export) -* [history](history) -* [images](images) -* [import](import) -* [load](load) -* [rmi](rmi) -* [save](save) -* [tag](tag) +* [build](build.md) +* [commit](commit.md) +* [export](export.md) +* [history](history.md) +* [images](images.md) +* [import](import.md) +* [load](load.md) +* [rmi](rmi.md) +* [save](save.md) +* [tag](tag.md) ### Container commands -* [attach](attach) -* [cp](cp) -* [create](create) -* [diff](diff) -* [events](events) -* [exec](exec) -* [kill](kill) -* [logs](logs) -* [pause](pause) -* [port](port) -* [ps](ps) -* [rename](rename) -* [restart](restart) -* [rm](rm) -* [run](run) -* [start](start) -* [stats](stats) -* [stop](stop) -* [top](top) -* [unpause](unpause) -* [wait](wait) +* [attach](attach.md) +* [cp](cp.md) +* [create](create.md) +* [diff](diff.md) +* [events](events.md) +* [exec](exec.md) +* [kill](kill.md) +* [logs](logs.md) +* [pause](pause.md) +* [port](port.md) +* [ps](ps.md) +* [rename](rename.md) +* [restart](restart.md) +* [rm](rm.md) +* [run](run.md) +* [start](start.md) +* [stats](stats.md) +* [stop](stop.md) +* [top](top.md) +* [unpause](unpause.md) +* [wait](wait.md) ### Hub and registry commands -* [login](login) -* [logout](logout) -* [pull](pull) -* [push](push) -* [search](search) +* [login](login.md) +* [logout](logout.md) +* [pull](pull.md) +* [push](push.md) +* [search](search.md) ### Network and connectivity commands -* [network_connect](network_connect) -* [network_create](network_create) -* [network_disconnect](network_disconnect) -* [network_inspect](network_inspect) -* [network_ls](network_ls) -* [network_rm](network_rm) +* [network_connect](network_connect.md) +* [network_create](network_create.md) +* [network_disconnect](network_disconnect.md) +* [network_inspect](network_inspect.md) +* [network_ls](network_ls.md) +* [network_rm](network_rm.md) ### Shared data volume commands -* [volume_create](volume_create) -* [volume_inspect](volume_inspect) -* [volume_ls](volume_ls) -* [volume_rm](volume_rm) +* [volume_create](volume_create.md) +* [volume_inspect](volume_inspect.md) +* [volume_ls](volume_ls.md) +* [volume_rm](volume_rm.md) diff --git a/docs/reference/commandline/run.md b/docs/reference/commandline/run.md index 4bb5ec1899..9db6229a42 100644 --- a/docs/reference/commandline/run.md +++ b/docs/reference/commandline/run.md @@ -81,13 +81,12 @@ specified image, and then `starts` it using the specified command. That is, previous changes intact using `docker start`. See `docker ps -a` to view a list of all containers. -There is detailed information about `docker run` in the [Docker run reference]( -/reference/run/). +There is detailed information about `docker run` in the [Docker run reference](run.md). The `docker run` command can be used in combination with `docker commit` to -[*change the command that a container runs*](/reference/commandline/commit). +[*change the command that a container runs*](commit.md). -See the [Docker User Guide](/userguide/dockerlinks/) for more detailed +See the [Docker User Guide](../../userguide/dockerlinks.md) for more detailed information about the `--expose`, `-p`, `-P` and `--link` parameters, and linking containers. @@ -170,14 +169,14 @@ manipulate the host's Docker daemon. $ docker run -p 127.0.0.1:80:8080 ubuntu bash This binds port `8080` of the container to port `80` on `127.0.0.1` of -the host machine. The [Docker User Guide](/userguide/dockerlinks/) +the host machine. The [Docker User Guide](../../userguide/dockerlinks.md) explains in detail how to manipulate ports in Docker. $ docker run --expose 80 ubuntu bash This exposes port `80` of the container for use within a link without publishing the port to the host system's interfaces. The [Docker User -Guide](/userguide/dockerlinks) explains in detail how to manipulate +Guide](../../userguide/dockerlinks.md) explains in detail how to manipulate ports in Docker. $ docker run -e MYVAR1 --env MYVAR2=foo --env-file ./env.list ubuntu bash @@ -279,7 +278,7 @@ format: You can load multiple label-files by supplying multiple `--label-file` flags. For additional information on working with labels, see [*Labels - custom -metadata in Docker*](/userguide/labels-custom-metadata/) in the Docker User +metadata in Docker*](../../userguide/labels-custom-metadata.md) in the Docker User Guide. $ docker run --link /redis:redis --name console ubuntu bash @@ -466,7 +465,7 @@ This will run the `redis` container with a restart policy of **always** so that if the container exits, Docker will restart it. More detailed information on restart policies can be found in the -[Restart Policies (--restart)](/reference/run/#restart-policies-restart) +[Restart Policies (--restart)](../run.md#restart-policies-restart) section of the Docker run reference page. ## Adding entries to a container hosts file diff --git a/docs/reference/commandline/search.md b/docs/reference/commandline/search.md index 07d9ca28c4..7672c13b61 100644 --- a/docs/reference/commandline/search.md +++ b/docs/reference/commandline/search.md @@ -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/#searching-for-images) for +See [*Find Public Images on Docker Hub*](../../userguide/dockerrepos.md#searching-for-images) for more details on finding shared images from the command line. > **Note:** diff --git a/docs/reference/commandline/tag.md b/docs/reference/commandline/tag.md index abcc23a3de..a325efaa4b 100644 --- a/docs/reference/commandline/tag.md +++ b/docs/reference/commandline/tag.md @@ -18,4 +18,4 @@ parent = "smn_cli" --help=false Print usage You can group your images together using names and tags, and then upload them -to [*Share Images via Repositories*](/userguide/dockerrepos/#contributing-to-docker-hub). +to [*Share Images via Repositories*](../../userguide/dockerrepos.md#contributing-to-docker-hub). diff --git a/docs/reference/commandline/volume_rm.md b/docs/reference/commandline/volume_rm.md index 6d09723ca4..93f746c4e2 100644 --- a/docs/reference/commandline/volume_rm.md +++ b/docs/reference/commandline/volume_rm.md @@ -1,6 +1,6 @@