Browse code

Enabled GitHub Flavored Markdown GitHub flavored markdown is now supported for links and images. Also, ran LinkChecker and FileResolver. Yay! Fixes from Spider check Output for docker/docker now goes into engine directory

Signed-off-by: Mary Anthony <mary@docker.com>

Mary Anthony authored on 2015/10/10 08:50:41
Showing 112 changed files
... ...
@@ -1,10 +1,10 @@
1
-FROM docs/base:latest
1
+FROM docs/base:hugo-github-linking
2 2
 MAINTAINER Mary Anthony <mary@docker.com> (@moxiegirl)
3 3
 
4 4
 # To get the git info for this repo
5 5
 COPY . /src
6 6
 
7
-COPY . /docs/content/
7
+COPY . /docs/content/engine
8 8
 
9 9
 RUN svn checkout https://github.com/docker/compose/trunk/docs /docs/content/compose
10 10
 RUN svn checkout https://github.com/docker/swarm/trunk/docs /docs/content/swarm
... ...
@@ -14,16 +14,3 @@ RUN svn checkout https://github.com/kitematic/kitematic/trunk/docs /docs/content
14 14
 RUN svn checkout https://github.com/docker/tutorials/trunk/docs /docs/content/
15 15
 RUN svn checkout https://github.com/docker/opensource/trunk/docs /docs/content/opensource
16 16
 
17
-
18
-
19
-
20
-# Sed to process GitHub Markdown
21
-# 1-2 Remove comment code from metadata block
22
-# 3 Change ](/word to ](/project/ in links
23
-# 4 Change ](word.md) to ](/project/word)
24
-# 5 Remove .md extension from link text
25
-# 6 Change ](../ to ](/project/word) 
26
-# 7 Change ](../../ to ](/project/ --> not implemented
27
-# 
28
-# 
29
-RUN /src/pre-process.sh /docs
30 17
\ No newline at end of file
... ...
@@ -41,7 +41,7 @@ on other branches by special arrangement with the Docker maintainers.
41 41
 
42 42
 If you are a new or beginner contributor, we encourage you to read through the
43 43
 [our detailed contributors
44
-guide](https://docs.docker.com/project/who-written-for/). The guide explains in
44
+guide](who-written-for.md). The guide explains in
45 45
 detail, with examples, how to contribute. If you are an experienced contributor
46 46
 this quickstart should be enough to get you started.
47 47
 
... ...
@@ -89,7 +89,7 @@ own.
89 89
 6.  Check your writing for style and mechanical errors.
90 90
 
91 91
 	Use our [documentation style
92
-	guide](https://docs.docker.com/project/doc-style/) to check style. There are
92
+	guide](doc-style.md) to check style. There are
93 93
 	several [good grammar and spelling online
94 94
 	checkers](http://www.hemingwayapp.com/) that can check your writing
95 95
 	mechanics.
... ...
@@ -109,7 +109,7 @@ links that are referenced in the documentation&mdash;there should be none.
109 109
 ## Style guide
110 110
 
111 111
 If you have questions about how to write for Docker's documentation, please see
112
-the [style guide](project/doc-style.md). The style guide provides
112
+the [style guide](doc-style.md). The style guide provides
113 113
 guidance about grammar, syntax, formatting, styling, language, or tone. If
114 114
 something isn't clear in the guide, please submit an issue to let us know or
115 115
 submit a pull request to help us improve it.
... ...
@@ -10,8 +10,7 @@ parent = "smn_images"
10 10
 
11 11
 # Create a base image
12 12
 
13
-So you want to create your own [*Base Image*](
14
-/reference/glossary/#base-image)? Great!
13
+So you want to create your own [*Base Image*](../reference/glossary.md#base-image)? Great!
15 14
 
16 15
 The specific process will depend heavily on the Linux distribution you
17 16
 want to package. We have some examples below, and you are encouraged to
... ...
@@ -65,7 +64,7 @@ If you want to test it out, you can clone [the image repo](https://github.com/do
65 65
 
66 66
 There are lots more resources available to help you write your 'Dockerfile`.
67 67
 
68
-* There's a [complete guide to all the instructions](/reference/builder/) available for use in a `Dockerfile` in the reference section.
68
+* There's a [complete guide to all the instructions](../reference/builder.md) available for use in a `Dockerfile` in the reference section.
69 69
 * To help you write a clear, readable, maintainable `Dockerfile`, we've also
70
-written a [`Dockerfile` Best Practices guide](/articles/dockerfile_best-practices).
71
-* If your goal is to create a new Official Repository, be sure to read up on Docker's [Official Repositories](/docker-hub/official_repos/).
70
+written a [`Dockerfile` Best Practices guide](dockerfile_best-practices.md).
71
+* If your goal is to create a new Official Repository, be sure to read up on Docker's [Official Repositories](https://docs.docker.com/docker-hub/official_repos/).
... ...
@@ -29,7 +29,7 @@ to preface each `docker` command with `sudo`. One way to avoid having to use
29 29
 add users that will be entering `docker` commands to the 'docker' group.
30 30
 
31 31
 For more information about installing Docker or `sudo` configuration, refer to
32
-the [installation](/installation) instructions for your operating system.
32
+the [installation](../installation) instructions for your operating system.
33 33
 
34 34
 
35 35
 ## Download a pre-built image
... ...
@@ -38,7 +38,7 @@ the [installation](/installation) instructions for your operating system.
38 38
     $ docker pull ubuntu
39 39
 
40 40
 This will find the `ubuntu` image by name on
41
-[*Docker Hub*](/userguide/dockerrepos/#searching-for-images)
41
+[*Docker Hub*](../userguide/dockerrepos.md#searching-for-images)
42 42
 and download it from [Docker Hub](https://hub.docker.com) to a local
43 43
 image cache.
44 44
 
... ...
@@ -190,6 +190,6 @@ you already have, use the `docker images` command.
190 190
 You now have an image state from which you can create new instances.
191 191
 
192 192
 Read more about [*Share Images via
193
-Repositories*](/userguide/dockerrepos) or
193
+Repositories*](../userguide/dockerrepos.md) or
194 194
 continue to the complete [*Command
195
-Line*](/reference/commandline/cli)
195
+Line*](../reference/commandline/cli.md)
... ...
@@ -13,5 +13,5 @@ weight = 7
13 13
 
14 14
 The original content was deprecated. For information about configuring
15 15
 certificates, see  [deploying a registry
16
-server](http://docs.docker.com/registry/deploying/). To reach an older version
16
+server](http://docs.docker.com/registry/deploying). To reach an older version
17 17
 of this content, refer to an older version of the documentation. 
... ...
@@ -13,7 +13,7 @@ parent = "smn_third_party"
13 13
 > **Note**:
14 14
 > Please note this is a community contributed installation path. The only
15 15
 > `official` installation is using the
16
-> [*Ubuntu*](/installation/ubuntulinux) installation
16
+> [*Ubuntu*](../installation/ubuntulinux.md) installation
17 17
 > path. This version may sometimes be out of date.
18 18
 
19 19
 ## Requirements
... ...
@@ -57,7 +57,7 @@ These options :
57 57
 - Set `tls` to true with the server certificate and key specified using `--tlscert` and `--tlskey` respectively
58 58
 - Listen for connections on `tcp://192.168.59.3:2376`
59 59
 
60
-The command line reference has the [complete list of daemon flags](/reference/commandline/daemon)
60
+The command line reference has the [complete list of daemon flags](../reference/commandline/daemon.md)
61 61
 with explanations.
62 62
 
63 63
 ## Ubuntu
... ...
@@ -65,7 +65,7 @@ with explanations.
65 65
 As of `14.04`, Ubuntu uses Upstart as a process manager. By default, Upstart jobs
66 66
 are located in  `/etc/init` and the `docker` Upstart job can be found at `/etc/init/docker.conf`.
67 67
 
68
-After successfully [installing Docker for Ubuntu](/installation/ubuntulinux/),
68
+After successfully [installing Docker for Ubuntu](../installation/ubuntulinux.md),
69 69
 you can check the running status using Upstart in this way:
70 70
 
71 71
     $ sudo status docker
... ...
@@ -114,7 +114,7 @@ These options :
114 114
 - Set `tls` to true with the server certificate and key specified using `--tlscert` and `--tlskey` respectively
115 115
 - Listen for connections on `tcp://192.168.59.3:2376`
116 116
 
117
-The command line reference has the [complete list of daemon flags](/reference/commandline/daemon)
117
+The command line reference has the [complete list of daemon flags](../reference/commandline/daemon.md)
118 118
 with explanations.
119 119
 
120 120
 
... ...
@@ -150,8 +150,7 @@ can be located at `/var/log/upstart/docker.log`
150 150
 As of `7.x`, CentOS and RHEL use `systemd` as the process manager. As of `21`, Fedora uses
151 151
 `systemd` as its process manager.
152 152
 
153
-After successfully installing Docker for [CentOS](/installation/centos/)/[Red Hat Enterprise Linux]
154
-(/installation/rhel/)/[Fedora](/installation/fedora), you can check the running status in this way:
153
+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:
155 154
 
156 155
     $ sudo systemctl status docker
157 156
 
... ...
@@ -207,7 +206,7 @@ These options :
207 207
 - Set `tls` to true with the server certificate and key specified using `--tlscert` and `--tlskey` respectively
208 208
 - Listen for connections on `tcp://192.168.59.3:2376`
209 209
 
210
-The command line reference has the [complete list of daemon flags](/reference/commandline/daemon)
210
+The command line reference has the [complete list of daemon flags](../reference/commandline/daemon.md)
211 211
 with explanations.
212 212
 
213 213
 5. Save and close the file.
... ...
@@ -16,7 +16,7 @@ Docker can build images automatically by reading the instructions from a
16 16
 `Dockerfile`, a text file that contains all the commands, in order, needed to
17 17
 build a given image. `Dockerfile`s adhere to a specific format and use a
18 18
 specific set of instructions. You can learn the basics on the
19
-[Dockerfile Reference](https://docs.docker.com/reference/builder/) page. If
19
+[Dockerfile Reference](../reference/builder.md) page. If
20 20
 you’re new to writing `Dockerfile`s, you should start there.
21 21
 
22 22
 This document covers the best practices and methods recommended by Docker,
... ...
@@ -27,7 +27,7 @@ if you’re creating an Official Image, you *must* adhere to these practices).
27 27
 You can see many of these practices and recommendations in action in the [buildpack-deps `Dockerfile`](https://github.com/docker-library/buildpack-deps/blob/master/jessie/Dockerfile).
28 28
 
29 29
 > Note: for more detailed explanations of any of the Dockerfile commands
30
->mentioned here, visit the [Dockerfile Reference](https://docs.docker.com/reference/builder/) page.
30
+>mentioned here, visit the [Dockerfile Reference](../reference/builder.md) page.
31 31
 
32 32
 ## General guidelines and recommendations
33 33
 
... ...
@@ -45,7 +45,7 @@ add to that directory only the files needed for building the Dockerfile. To
45 45
 increase the build's performance, you can exclude files and directories by
46 46
 adding a `.dockerignore` file to that directory as well. This file supports
47 47
 exclusion patterns similar to `.gitignore` files. For information on creating one,
48
-see the [.dockerignore file](../../reference/builder/#dockerignore-file).
48
+see the [.dockerignore file](../reference/builder.md#dockerignore-file).
49 49
 
50 50
 ### Avoid installing unnecessary packages
51 51
 
... ...
@@ -59,7 +59,7 @@ in a database image.
59 59
 In almost all cases, you should only run a single process in a single
60 60
 container. Decoupling applications into multiple containers makes it much
61 61
 easier to scale horizontally and reuse containers. If that service depends on
62
-another service, make use of [container linking](https://docs.docker.com/userguide/dockerlinks/).
62
+another service, make use of [container linking](../userguide/dockerlinks.md).
63 63
 
64 64
 ### Minimize the number of layers
65 65
 
... ...
@@ -128,7 +128,7 @@ various instructions available for use in a `Dockerfile`.
128 128
 
129 129
 ### FROM
130 130
 
131
-[Dockerfile reference for the FROM instruction](https://docs.docker.com/reference/builder/#from)
131
+[Dockerfile reference for the FROM instruction](../reference/builder.md#from)
132 132
 
133 133
 Whenever possible, use current Official Repositories as the basis for your
134 134
 image. We recommend the [Debian image](https://registry.hub.docker.com/_/debian/)
... ...
@@ -137,7 +137,7 @@ since it’s very tightly controlled and kept extremely minimal (currently under
137 137
 
138 138
 ### RUN
139 139
 
140
-[Dockerfile reference for the RUN instruction](https://docs.docker.com/reference/builder/#run)
140
+[Dockerfile reference for the RUN instruction](../reference/builder.md#run)
141 141
 
142 142
 As always, to make your `Dockerfile` more readable, understandable, and
143 143
 maintainable, split long or complex `RUN` statements on multiple lines separated
... ...
@@ -233,7 +233,7 @@ keep the image size down. Since the `RUN` statement starts with
233 233
 
234 234
 ### CMD
235 235
 
236
-[Dockerfile reference for the CMD instruction](https://docs.docker.com/reference/builder/#cmd)
236
+[Dockerfile reference for the CMD instruction](../reference/builder.md#cmd)
237 237
 
238 238
 The `CMD` instruction should be used to run the software contained by your
239 239
 image, along with any arguments. `CMD` should almost always be used in the
... ...
@@ -247,13 +247,13 @@ perl, etc), for example, `CMD ["perl", "-de0"]`, `CMD ["python"]`, or
247 247
 `CMD [“php”, “-a”]`. Using this form means that when you execute something like
248 248
 `docker run -it python`, you’ll get dropped into a usable shell, ready to go.
249 249
 `CMD` should rarely be used in the manner of `CMD [“param”, “param”]` in
250
-conjunction with [`ENTRYPOINT`](https://docs.docker.com/reference/builder/#entrypoint), unless
250
+conjunction with [`ENTRYPOINT`](../reference/builder.md#entrypoint), unless
251 251
 you and your expected users are already quite familiar with how `ENTRYPOINT`
252 252
 works.
253 253
 
254 254
 ### EXPOSE
255 255
 
256
-[Dockerfile reference for the EXPOSE instruction](https://docs.docker.com/reference/builder/#expose)
256
+[Dockerfile reference for the EXPOSE instruction](../reference/builder.md#expose)
257 257
 
258 258
 The `EXPOSE` instruction indicates the ports on which a container will listen
259 259
 for connections. Consequently, you should use the common, traditional port for
... ...
@@ -268,7 +268,7 @@ the recipient container back to the source (ie, `MYSQL_PORT_3306_TCP`).
268 268
 
269 269
 ### ENV
270 270
 
271
-[Dockerfile reference for the ENV instruction](https://docs.docker.com/reference/builder/#env)
271
+[Dockerfile reference for the ENV instruction](../reference/builder.md#env)
272 272
 
273 273
 In order to make new software easier to run, you can use `ENV` to update the
274 274
 `PATH` environment variable for the software your container installs. For
... ...
@@ -293,8 +293,8 @@ auto-magically bump the version of the software in your container.
293 293
 
294 294
 ### ADD or COPY
295 295
 
296
-[Dockerfile reference for the ADD instruction](https://docs.docker.com/reference/builder/#add)<br/>
297
-[Dockerfile reference for the COPY instruction](https://docs.docker.com/reference/builder/#copy)
296
+[Dockerfile reference for the ADD instruction](../reference/builder.md#add)<br/>
297
+[Dockerfile reference for the COPY instruction](../reference/builder.md#copy)
298 298
 
299 299
 Although `ADD` and `COPY` are functionally similar, generally speaking, `COPY`
300 300
 is preferred. That’s because it’s more transparent than `ADD`. `COPY` only
... ...
@@ -339,7 +339,7 @@ auto-extraction capability, you should always use `COPY`.
339 339
 
340 340
 ### ENTRYPOINT
341 341
 
342
-[Dockerfile reference for the ENTRYPOINT instruction](https://docs.docker.com/reference/builder/#entrypoint)
342
+[Dockerfile reference for the ENTRYPOINT instruction](../reference/builder.md#entrypoint)
343 343
 
344 344
 The best use for `ENTRYPOINT` is to set the image's main command, allowing that
345 345
 image to be run as though it was that command (and then use `CMD` as the
... ...
@@ -389,7 +389,7 @@ exec "$@"
389 389
 > This script uses [the `exec` Bash command](http://wiki.bash-hackers.org/commands/builtin/exec)
390 390
 > so that the final running application becomes the container's PID 1. This allows
391 391
 > the application to receive any Unix signals sent to the container.
392
-> See the [`ENTRYPOINT`](https://docs.docker.com/reference/builder/#entrypoint)
392
+> See the [`ENTRYPOINT`](../reference/builder.md#entrypoint)
393 393
 > help for more details.
394 394
 
395 395
 
... ...
@@ -415,7 +415,7 @@ Lastly, it could also be used to start a totally different tool, such as Bash:
415 415
 
416 416
 ### VOLUME
417 417
 
418
-[Dockerfile reference for the VOLUME instruction](https://docs.docker.com/reference/builder/#volume)
418
+[Dockerfile reference for the VOLUME instruction](../reference/builder.md#volume)
419 419
 
420 420
 The `VOLUME` instruction should be used to expose any database storage area,
421 421
 configuration storage, or files/folders created by your docker container. You
... ...
@@ -424,7 +424,7 @@ parts of your image.
424 424
 
425 425
 ### USER
426 426
 
427
-[Dockerfile reference for the USER instruction](https://docs.docker.com/reference/builder/#user)
427
+[Dockerfile reference for the USER instruction](../reference/builder.md#user)
428 428
 
429 429
 If a service can run without privileges, use `USER` to change to a non-root
430 430
 user. Start by creating the user and group in the `Dockerfile` with something
... ...
@@ -445,7 +445,7 @@ and forth frequently.
445 445
 
446 446
 ### WORKDIR
447 447
 
448
-[Dockerfile reference for the WORKDIR instruction](https://docs.docker.com/reference/builder/#workdir)
448
+[Dockerfile reference for the WORKDIR instruction](../reference/builder.md#workdir)
449 449
 
450 450
 For clarity and reliability, you should always use absolute paths for your
451 451
 `WORKDIR`. Also, you should use `WORKDIR` instead of  proliferating
... ...
@@ -454,7 +454,7 @@ troubleshoot, and maintain.
454 454
 
455 455
 ### ONBUILD
456 456
 
457
-[Dockerfile reference for the ONBUILD instruction](https://docs.docker.com/reference/builder/#onbuild)
457
+[Dockerfile reference for the ONBUILD instruction](../reference/builder.md#onbuild)
458 458
 
459 459
 An `ONBUILD` command executes after the current `Dockerfile` build completes.
460 460
 `ONBUILD` executes in any child image derived `FROM` the current image.  Think
... ...
@@ -488,8 +488,8 @@ These Official Repositories have exemplary `Dockerfile`s:
488 488
 
489 489
 ## Additional resources:
490 490
 
491
-* [Dockerfile Reference](https://docs.docker.com/reference/builder/)
492
-* [More about Base Images](https://docs.docker.com/articles/baseimages/)
491
+* [Dockerfile Reference](../reference/builder.md)
492
+* [More about Base Images](baseimages.md)
493 493
 * [More about Automated Builds](https://docs.docker.com/docker-hub/builds/)
494 494
 * [Guidelines for Creating Official
495 495
 Repositories](https://docs.docker.com/docker-hub/official_repos/)
... ...
@@ -12,7 +12,7 @@ weight = 99
12 12
 # Automatically start containers
13 13
 
14 14
 As of Docker 1.2,
15
-[restart policies](/reference/run/#restart-policies-restart) are the
15
+[restart policies](../reference/run.md#restart-policies-restart) are the
16 16
 built-in Docker mechanism for restarting containers when they exit. If set,
17 17
 restart policies will be used when the Docker daemon starts up, as typically
18 18
 happens after a system boot. Restart policies will ensure that linked containers
... ...
@@ -30,7 +30,7 @@ range from `02:42:ac:11:00:00` to `02:42:ac:11:ff:ff`.
30 30
 > and options for Docker. In most cases you won't need this information.
31 31
 > If you're looking to get started with a simpler explanation of Docker
32 32
 > networking and an introduction to the concept of container linking see
33
-> the [Docker User Guide](/userguide/dockerlinks/).
33
+> the [Docker User Guide](../userguide/dockerlinks.md).
34 34
 
35 35
 But `docker0` is no ordinary interface.  It is a virtual *Ethernet
36 36
 bridge* that automatically forwards packets between any other network
... ...
@@ -357,7 +357,7 @@ services.  If the Docker daemon is running with both `--icc=false` and
357 357
 `ACCEPT` rules so that the new container can connect to the ports
358 358
 exposed by the other container — the ports that it mentioned in the
359 359
 `EXPOSE` lines of its `Dockerfile`.  Docker has more documentation on
360
-this subject — see the [linking Docker containers](/userguide/dockerlinks)
360
+this subject — see the [linking Docker containers](../userguide/dockerlinks.md)
361 361
 page for further details.
362 362
 
363 363
 > **Note**:
... ...
@@ -425,7 +425,7 @@ machine that the Docker server creates when it starts:
425 425
 
426 426
 But if you want containers to accept incoming connections, you will need
427 427
 to provide special options when invoking `docker run`.  These options
428
-are covered in more detail in the [Docker User Guide](/userguide/dockerlinks)
428
+are covered in more detail in the [Docker User Guide](../userguide/dockerlinks.md)
429 429
 page.  There are two approaches.
430 430
 
431 431
 First, you can supply `-P` or `--publish-all=true|false` to `docker run` which
... ...
@@ -489,7 +489,7 @@ connect to a local container exposed port through the commonly used loopback
489 489
 address: this alternative is preferred for performance reasons.
490 490
 
491 491
 Again, this topic is covered without all of these low-level networking
492
-details in the [Docker User Guide](/userguide/dockerlinks/) document if you
492
+details in the [Docker User Guide](../userguide/dockerlinks.md) document if you
493 493
 would like to use that as your port redirection reference instead.
494 494
 
495 495
 ## IPv6
... ...
@@ -538,7 +538,7 @@ want to configure `eth0` via Router Advertisements you should set:
538 538
 
539 539
     $ sysctl net.ipv6.conf.eth0.accept_ra=2
540 540
 
541
-![](/article-img/ipv6_basic_host_config.svg)
541
+![](../article-img/ipv6_basic_host_config.svg)
542 542
 
543 543
 Every new container will get an IPv6 address from the defined subnet. Further
544 544
 a default route will be added on `eth0` in the container via the address
... ...
@@ -568,7 +568,7 @@ Often servers or virtual machines get a `/64` IPv6 subnet assigned (e.g.
568 568
 Docker a `/80` subnet while using a separate `/80` subnet for other
569 569
 applications on the host:
570 570
 
571
-![](/article-img/ipv6_slash64_subnet_config.svg)
571
+![](../article-img/ipv6_slash64_subnet_config.svg)
572 572
 
573 573
 In this setup the subnet `2001:db8:23:42::/80` with a range from `2001:db8:23:42:0:0:0:0`
574 574
 to `2001:db8:23:42:0:ffff:ffff:ffff` is attached to `eth0`, with the host listening
... ...
@@ -606,7 +606,7 @@ is connected to `eth0`. This means all devices (containers) with the addresses
606 606
 from the Docker subnet are expected to be found within the router subnet.
607 607
 Therefore the router thinks it can talk to these containers directly.
608 608
 
609
-![](/article-img/ipv6_ndp_proxying.svg)
609
+![](../article-img/ipv6_ndp_proxying.svg)
610 610
 
611 611
 As soon as the router wants to send an IPv6 packet to the first container it
612 612
 will transmit a neighbor solicitation request, asking, who has
... ...
@@ -645,7 +645,7 @@ Using routable IPv6 addresses allows you to realize communication between
645 645
 containers on different hosts. Let's have a look at a simple Docker IPv6 cluster
646 646
 example:
647 647
 
648
-![](/article-img/ipv6_switched_network_example.svg)
648
+![](../article-img/ipv6_switched_network_example.svg)
649 649
 
650 650
 The Docker hosts are in the `2001:db8:0::/64` subnet. Host1 is configured
651 651
 to provide addresses from the `2001:db8:1::/64` subnet to its containers. It
... ...
@@ -695,7 +695,7 @@ routing information about the Docker subnets. When you add or remove a host to
695 695
 this environment you just have to update the routing table in the router - not
696 696
 on every host.
697 697
 
698
-![](/article-img/ipv6_routed_network_example.svg)
698
+![](../article-img/ipv6_routed_network_example.svg)
699 699
 
700 700
 In this scenario containers of the same host can communicate directly with each
701 701
 other. The traffic between containers on different hosts will be routed via
... ...
@@ -12,7 +12,7 @@ parent = "smn_third_party"
12 12
 
13 13
 > *Note:* Please note this is a community contributed installation path. The
14 14
 > only `official` installation is using the
15
-> [*Ubuntu*](/installation/ubuntulinux) installation
15
+> [*Ubuntu*](../installation/ubuntulinux.md) installation
16 16
 > path. This version may sometimes be out of date.
17 17
 
18 18
 ## Requirements
... ...
@@ -26,7 +26,7 @@ The following is a sample output from the `docker stats` command
26 26
     redis2              0.07%               2.746 MB / 64 MB      4.29%               1.266 KB / 648 B    12.4 MB / 0 B
27 27
 
28 28
 
29
-The [docker stats](/reference/commandline/stats/) reference page has
29
+The [docker stats](../reference/commandline/stats.md) reference page has
30 30
 more details about the `docker stats` command.
31 31
 
32 32
 ## Control groups
... ...
@@ -335,7 +335,7 @@ layer; you will also have to add traffic going through the userland
335 335
 proxy.
336 336
 
337 337
 Then, you will need to check those counters on a regular basis. If you
338
-happen to use `collectd`, there is a [nice plugin](https://collectd.org/wiki/index.php/Plugin:IPTables)
338
+happen to use `collectd`, there is a [nice plugin](https://collectd.org/wiki/index.php/Table_of_Plugins)
339 339
 to automate iptables counters collection.
340 340
 
341 341
 ### Interface-level counters
... ...
@@ -39,7 +39,7 @@ of another container. Of course, if the host system is setup
39 39
 accordingly, containers can interact with each other through their
40 40
 respective network interfaces — just like they can interact with
41 41
 external hosts. When you specify public ports for your containers or use
42
-[*links*](/userguide/dockerlinks)
42
+[*links*](../userguide/dockerlinks.md)
43 43
 then IP traffic is allowed between containers. They can ping each other,
44 44
 send/receive UDP packets, and establish TCP connections, but that can be
45 45
 restricted if necessary. From a network architecture point of view, all
... ...
@@ -115,7 +115,7 @@ However, if you do that, being aware of the above mentioned security
115 115
 implication, you should ensure that it will be reachable only from a
116 116
 trusted network or VPN; or protected with e.g., `stunnel` and client SSL
117 117
 certificates. You can also secure them with [HTTPS and
118
-certificates](/articles/https/).
118
+certificates](../articles/https/).
119 119
 
120 120
 The daemon is also potentially vulnerable to other inputs, such as image
121 121
 loading from either disk with 'docker load', or from the network with
... ...
@@ -10,8 +10,9 @@ parent = "smn_third_party"
10 10
 
11 11
 # Using Supervisor with Docker
12 12
 
13
-> **Note**: **If you don't like sudo** then see [*Giving non-root
14
-> access*](/installation/binaries/#giving-non-root-access)
13
+> **Note**:
14
+> - **If you don't like sudo** then see [*Giving non-root
15
+>   access*](../installation/binaries.md#giving-non-root-access)
15 16
 
16 17
 Traditionally a Docker container runs a single process when it is
17 18
 launched, for example an Apache daemon or a SSH server daemon. Often
... ...
@@ -10,10 +10,11 @@ parent = "smn_applied"
10 10
 
11 11
 # Dockerizing an apt-cacher-ng service
12 12
 
13
-> **Note**: **If you don't like sudo** then see [*Giving non-root
14
-> access*](/installation/binaries/#giving-non-root-access).
15
-> **If you're using OS X or Docker via TCP** then you shouldn't use
16
-> sudo.
13
+> **Note**: 
14
+> - **If you don't like sudo** then see [*Giving non-root
15
+>   access*](../installation/binaries.md#giving-non-root-access).
16
+> - **If you're using OS X or docker via TCP** then you shouldn't use
17
+>   sudo.
17 18
 
18 19
 When you have multiple Docker servers, or build unrelated Docker
19 20
 containers which can't make use of the Docker build cache, it can be
... ...
@@ -10,8 +10,9 @@ parent = "smn_applied"
10 10
 
11 11
 # Dockerizing a CouchDB service
12 12
 
13
-> **Note**: **If you don't like sudo** then see [*Giving non-root
14
-> access*](/installation/binaries/#giving-non-root-access)
13
+> **Note**: 
14
+> - **If you don't like sudo** then see [*Giving non-root
15
+>   access*](../installation/binaries.md#giving-non-root-access)
15 16
 
16 17
 Here's an example of using data volumes to share the same data between
17 18
 two CouchDB containers. This could be used for hot upgrades, testing
... ...
@@ -14,10 +14,10 @@ weight = 8
14 14
 
15 15
 This section contains the following:
16 16
 
17
-* [Dockerizing MongoDB](/examples/mongodb/)
18
-* [Dockerizing PostgreSQL](/examples/postgresql_service/)    
19
-* [Dockerizing a CouchDB service](/examples/couchdb_data_volumes/)         
20
-* [Dockerizing a Node.js web app](/examples/nodejs_web_app/)
21
-* [Dockerizing a Redis service](/examples/running_redis_service/)
22
-* [Dockerizing an apt-cacher-ng service](/examples/apt-cacher-ng/)
23
-* [Dockerizing applications: A 'Hello world'](/userguide/dockerizing)
17
+* [Dockerizing MongoDB](mongodb.md)
18
+* [Dockerizing PostgreSQL](postgresql_service.md)    
19
+* [Dockerizing a CouchDB service](couchdb_data_volumes.md)         
20
+* [Dockerizing a Node.js web app](nodejs_web_app.md)
21
+* [Dockerizing a Redis service](running_redis_service.md)
22
+* [Dockerizing an apt-cacher-ng service](apt-cacher-ng.md)
23
+* [Dockerizing applications: A 'Hello world'](../userguide/dockerizing.md)
... ...
@@ -29,7 +29,7 @@ instances will bring several benefits, such as:
29 29
 > **Note:**
30 30
 >
31 31
 > If you do **_not_** like `sudo`, you might want to check out:
32
-> [*Giving non-root access*](/installation/binaries/#giving-non-root-access).
32
+> [*Giving non-root access*](../installation/binaries.md#giving-non-root-access).
33 33
 
34 34
 ## Creating a Dockerfile for MongoDB
35 35
 
... ...
@@ -172,6 +172,6 @@ the exposed port to two different ports on the host
172 172
     $ mongo --port 28001
173 173
     $ mongo --port 28002
174 174
 
175
- - [Linking containers](/userguide/dockerlinks)
176
- - [Cross-host linking containers](/articles/ambassador_pattern_linking/)
177
- - [Creating an Automated Build](/docker-io/builds/#automated-builds)
175
+ - [Linking containers](../userguide/dockerlinks.md)
176
+ - [Cross-host linking containers](../articles/ambassador_pattern_linking.md)
177
+ - [Creating an Automated Build](https://docs.docker.com/docker-hub/builds/)
... ...
@@ -10,12 +10,14 @@ parent = "smn_applied"
10 10
 
11 11
 # Dockerizing a Node.js web app
12 12
 
13
-> **Note**: **If you don't like sudo** then see [*Giving non-root
14
-> access*](/installation/binaries/#giving-non-root-access)
15
-
16
-In this example, we are going to learn how to build a Docker image to run a
17
-simple Node.js "hello world" web application on CentOS. You can get the full source code at
18
-[https://github.com/enokd/docker-node-hello/](https://github.com/enokd/docker-node-hello/).
13
+> **Note**: 
14
+> - **If you don't like sudo** then see [*Giving non-root
15
+>   access*](../installation/binaries.md#giving-non-root-access)
16
+
17
+The goal of this example is to show you how you can build your own
18
+Docker images from a parent image using a `Dockerfile`
19
+. We will do that by making a simple Node.js hello world web
20
+application running on CentOS. You can get the full source code at[https://github.com/enokd/docker-node-hello/](https://github.com/enokd/docker-node-hello/).
19 21
 
20 22
 ## Create Node.js app
21 23
 
... ...
@@ -10,8 +10,9 @@ parent = "smn_applied"
10 10
 
11 11
 # Dockerizing PostgreSQL
12 12
 
13
-> **Note**: **If you don't like sudo** then see [*Giving non-root
14
-> access*](/installation/binaries/#giving-non-root-access)
13
+> **Note**: 
14
+> - **If you don't like sudo** then see [*Giving non-root
15
+>   access*](../installation/binaries.md#giving-non-root-access)
15 16
 
16 17
 ## Installing PostgreSQL on Docker
17 18
 
... ...
@@ -84,7 +85,7 @@ And run the PostgreSQL server container (in the foreground):
84 84
     $ docker run --rm -P --name pg_test eg_postgresql
85 85
 
86 86
 There are 2 ways to connect to the PostgreSQL server. We can use [*Link
87
-Containers*](/userguide/dockerlinks), or we can access it from our host
87
+Containers*](../userguide/dockerlinks.md), or we can access it from our host
88 88
 (or the network).
89 89
 
90 90
 > **Note**:
... ...
@@ -15,7 +15,7 @@ weight = 6
15 15
 
16 16
 Currently, you can extend Docker by adding a plugin. This section contains the following topics:
17 17
 
18
-* [Understand Docker plugins](/extend/plugins.md)
19
-* [Write a volume plugin](/extend/plugins_volume.md)
20
-* [Write a network plugin](/extend/plugins_network.md)
21
-* [Docker plugin API](/extend/plugin_api.md)
18
+* [Understand Docker plugins](plugins.md)
19
+* [Write a volume plugin](plugins_volume.md)
20
+* [Write a network plugin](plugins_network.md)
21
+* [Docker plugin API](plugin_api.md)
... ...
@@ -16,7 +16,7 @@ Docker Engine.
16 16
 
17 17
 This page is intended for people who want to develop their own Docker plugin.
18 18
 If you just want to learn about or use Docker plugins, look
19
-[here](/extend/plugins).
19
+[here](plugins.md).
20 20
 
21 21
 ## What plugins are
22 22
 
... ...
@@ -17,9 +17,9 @@ plugins.
17 17
 ## Types of plugins
18 18
 
19 19
 Plugins extend Docker's functionality.  They come in specific types.  For
20
-example, a [volume plugin](/extend/plugins_volume.md) might enable Docker
20
+example, a [volume plugin](plugins_volume.md) might enable Docker
21 21
 volumes to persist across multiple Docker hosts and a 
22
-[network plugin](/extend/plugins_network.md) might provide network plumbing
22
+[network plugin](plugins_network.md) might provide network plumbing
23 23
 using a favorite networking technology, such as vxlan overlay, ipvlan, EVPN, etc.
24 24
 
25 25
 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.
73 73
 ## Writing a plugin
74 74
 
75 75
 If you are interested in writing a plugin for Docker, or seeing how they work
76
-under the hood, see the [docker plugins reference](/extend/plugin_api).
76
+under the hood, see the [docker plugins reference](plugin_api.md).
... ...
@@ -1,10 +1,21 @@
1
+<!--[metadata]>
2
+title = "Docker network driver plugins"
3
+description = "Network drive plugins."
4
+keywords = ["Examples, Usage, plugins, docker, documentation, user guide"]
5
+[menu.main]
6
+parent = "mn_extend"
7
+weight=-1
8
+<![end-metadata]-->
9
+
1 10
 # Docker network driver plugins
2 11
 
3
-Docker supports network driver plugins via 
4
-[LibNetwork](https://github.com/docker/libnetwork). Network driver plugins are 
5
-implemented as "remote drivers" for LibNetwork, which shares plugin 
6
-infrastructure with Docker. In effect this means that network driver plugins 
7
-are activated in the same way as other plugins, and use the same kind of 
12
+Docker supports network driver plugins via
13
+[LibNetwork](https://github.com/docker/libnetwork). Network driver plugins are
14
+implemented as "remote drivers" for LibNetwork, which shares plugin
15
+infrastructure with Docker. In effect this means that network driver plugins
16
+are activated in the same way as other plugins, and use the same kind of
8 17
 protocol.
9 18
 
10 19
 ## Using network driver plugins
... ...
@@ -18,7 +29,7 @@ commands. For example,
18 18
 
19 19
     docker network create -d weave mynet
20 20
 
21
-Some network driver plugins are listed in [plugins.md](/docs/extend/plugins.md)
21
+Some network driver plugins are listed in [plugins](plugins.md)
22 22
 
23 23
 The network thus created is owned by the plugin, so subsequent commands
24 24
 referring to that network will also be run through the plugin such as,
... ...
@@ -12,7 +12,7 @@ parent = "mn_extend"
12 12
 
13 13
 Docker volume plugins enable Docker deployments to be integrated with external
14 14
 storage systems, such as Amazon EBS, and enable data volumes to persist beyond
15
-the lifetime of a single Docker host. See the [plugin documentation](/extend/plugins)
15
+the lifetime of a single Docker host. See the [plugin documentation](plugins.md)
16 16
 for more information.
17 17
 
18 18
 # Command-line changes
... ...
@@ -91,7 +91,7 @@ flag is set to `yes` like so:
91 91
 
92 92
 If you need to add an HTTP Proxy, set a different directory or partition for the
93 93
 Docker runtime files, or make other customizations, read the systemd article to
94
-learn how to [customize your systemd Docker daemon options](/articles/systemd/).
94
+learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
95 95
 
96 96
 ## Uninstallation
97 97
 
... ...
@@ -113,4 +113,4 @@ You can find more details about Docker on openSUSE or SUSE Linux Enterprise in
113 113
 the [Docker quick start guide](https://www.suse.com/documentation/sles-12/dockerquick/data/dockerquick.
114 114
 html) on the SUSE website. The document targets SUSE Linux Enterprise, but its contents apply also to openSUSE.
115 115
 
116
-Continue to the [User Guide](/userguide/).
116
+Continue to the [User Guide](../userguide/).
... ...
@@ -64,7 +64,7 @@ To start on system boot:
64 64
 
65 65
 If you need to add an HTTP Proxy, set a different directory or partition for the
66 66
 Docker runtime files, or make other customizations, read our systemd article to
67
-learn how to [customize your systemd Docker daemon options](/articles/systemd/).
67
+learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
68 68
 
69 69
 ## Running Docker with a manually-defined network
70 70
 
... ...
@@ -24,7 +24,7 @@ machines on Azure:
24 24
 
25 25
 ## What next?
26 26
 
27
-Continue with the [User Guide](/userguide/).
27
+Continue with the [User Guide](../userguide/).
28 28
 
29 29
 [0]: http://azure.microsoft.com/
30 30
 [1]: http://azure.microsoft.com/en-us/documentation/articles/virtual-machines-docker-vm-extension/
... ...
@@ -37,7 +37,7 @@ runtime:
37 37
 ## Check kernel dependencies
38 38
 
39 39
 Docker in daemon mode has specific kernel requirements. For details,
40
-check your distribution in [*Installation*](../#installation-list).
40
+check your distribution in [*Installation*](../installation#installation-list).
41 41
 
42 42
 A 3.10 Linux kernel is the minimum requirement for Docker.
43 43
 Kernels older than 3.10 lack some of the features required to run Docker
... ...
@@ -192,8 +192,7 @@ need to add `sudo` to all the client commands.
192 192
 
193 193
 > **Warning**: 
194 194
 > The *docker* group (or the group specified with `-G`) is root-equivalent;
195
-> see [*Docker Daemon Attack Surface*](
196
-> /articles/security/#docker-daemon-attack-surface) details.
195
+> see [*Docker Daemon Attack Surface*](../articles/security.md#docker-daemon-attack-surface) details.
197 196
 
198 197
 ## Upgrades
199 198
 
... ...
@@ -212,4 +211,4 @@ Then follow the regular installation steps.
212 212
     # run a container and open an interactive shell in the container
213 213
     $ sudo ./docker run -i -t ubuntu /bin/bash
214 214
 
215
-Continue with the [User Guide](/userguide/).
215
+Continue with the [User Guide](../userguide).
... ...
@@ -134,7 +134,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
134 134
 
135 135
 >**Warning**: The `docker` group is equivalent to the `root` user; For details
136 136
 >on how this impacts security in your system, see [*Docker Daemon Attack
137
->Surface*](/articles/security/#docker-daemon-attack-surface) for details.
137
+>Surface*](../articles/security.md#docker-daemon-attack-surface) for details.
138 138
 
139 139
 To create the `docker` group and add your user:
140 140
 
... ...
@@ -160,7 +160,7 @@ To ensure Docker starts when you boot your system, do the following:
160 160
 
161 161
 If you need to add an HTTP Proxy, set a different directory or partition for the
162 162
 Docker runtime files, or make other customizations, read our Systemd article to
163
-learn how to [customize your Systemd Docker daemon options](/articles/systemd/).
163
+learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
164 164
 
165 165
 
166 166
 ## Uninstall
... ...
@@ -123,8 +123,7 @@ use the `-G` flag to specify an alternative group.
123 123
 
124 124
 > **Warning**:
125 125
 > The `docker` group (or the group specified with the `-G` flag) is
126
-> `root`-equivalent; see [*Docker Daemon Attack Surface*](
127
-> /articles/security/#docker-daemon-attack-surface) details.
126
+> `root`-equivalent; see [*Docker Daemon Attack Surface*](../articles/security.md#docker-daemon-attack-surface) details.
128 127
 
129 128
 **Example:**
130 129
 
... ...
@@ -166,4 +165,4 @@ You must delete the user created configuration files manually.
166 166
 
167 167
 ## What next?
168 168
 
169
-Continue with the [User Guide](/userguide/).
169
+Continue with the [User Guide](../userguide/).
... ...
@@ -141,7 +141,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
141 141
 
142 142
 >**Warning**: The `docker` group is equivalent to the `root` user; For details
143 143
 >on how this impacts security in your system, see [*Docker Daemon Attack
144
->Surface*](/articles/security/#docker-daemon-attack-surface) for details.
144
+>Surface*](../articles/security.md#docker-daemon-attack-surface) for details.
145 145
 
146 146
 To create the `docker` group and add your user:
147 147
 
... ...
@@ -167,7 +167,7 @@ To ensure Docker starts when you boot your system, do the following:
167 167
 
168 168
 If you need to add an HTTP Proxy, set a different directory or partition for the
169 169
 Docker runtime files, or make other customizations, read our Systemd article to
170
-learn how to [customize your Systemd Docker daemon options](/articles/systemd/).
170
+learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
171 171
 
172 172
 ## Running Docker with a manually-defined network
173 173
 
... ...
@@ -53,7 +53,7 @@ To start on system boot:
53 53
 
54 54
 If you need to add an HTTP Proxy, set a different directory or partition for the
55 55
 Docker runtime files, or make other customizations, read our systemd article to
56
-learn how to [customize your systemd Docker daemon options](/articles/systemd/).
56
+learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
57 57
 
58 58
 ## Uninstallation
59 59
 
... ...
@@ -100,7 +100,7 @@ To start on system boot:
100 100
    
101 101
 If you need to add an HTTP Proxy, set a different directory or partition for the
102 102
 Docker runtime files, or make other customizations, read our systemd article to
103
-learn how to [customize your systemd Docker daemon options](/articles/systemd/).
103
+learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
104 104
 
105 105
 ## Uninstallation
106 106
 
... ...
@@ -11,31 +11,31 @@ keywords = ["Docker install "]
11 11
 Docker Engine is supported on Linux, Cloud, Windows, and OS X. Installation instructions are available for the following: 
12 12
 
13 13
 ## On Linux
14
-* [Arch Linux](archlinux)
15
-* [CentOS](centos)
16
-* [CRUX Linux](cruxlinux)
17
-* [Debian](debian)
18
-* [Fedora](fedora)
19
-* [FrugalWare](frugalware)
20
-* [Gentoo](gentoolinux)
21
-* [Oracle Linux](oracle)
22
-* [Red Hat Enterprise Linux](rhel)
23
-* [openSUSE and SUSE Linux Enterprise](SUSE)
24
-* [Ubuntu](ubuntulinux)
25
-
26
-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).
14
+* [Arch Linux](archlinux.md)
15
+* [CentOS](centos.md)
16
+* [CRUX Linux](cruxlinux.md)
17
+* [Debian](debian.md)
18
+* [Fedora](fedora.md)
19
+* [FrugalWare](frugalware.md)
20
+* [Gentoo](gentoolinux.md)
21
+* [Oracle Linux](oracle.md)
22
+* [Red Hat Enterprise Linux](rhel.md)
23
+* [openSUSE and SUSE Linux Enterprise](SUSE.md)
24
+* [Ubuntu](ubuntulinux.md)
25
+
26
+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).
27 27
 
28 28
 ## On Cloud
29
-* [Amazon EC2 Installation](amazon)
30
-* [Install on Joyent Public Cloud](joyent)
31
-* [Google Cloud Platform](google)
32
-* [IBM SoftLayer](softlayer)
33
-* [Microsoft Azure platform](azure)
34
-* [Rackspace Cloud](rackspace)
29
+* [Amazon EC2 Installation](amazon.md)
30
+* [Install on Joyent Public Cloud](joyent.md)
31
+* [Google Cloud Platform](google.md)
32
+* [IBM SoftLayer](softlayer.md)
33
+* [Microsoft Azure platform](azure.md)
34
+* [Rackspace Cloud](rackspace.md)
35 35
 
36 36
 ## On OSX and Windows
37
-* [Mac OS X](mac)
38
-* [Windows](windows)
37
+* [Mac OS X](mac.md)
38
+* [Windows](windows.md)
39 39
 
40 40
 ## The Docker Archives 
41 41
 Instructions for installing prior releases of Docker can be found in the following docker archives:
... ...
@@ -20,4 +20,4 @@ Joyent provides a `sdc-docker-setup.sh` script that makes it easy to use Docker
20 20
 with Joyent. The [Docker API guide for
21 21
 Triton](https://apidocs.joyent.com/docker) has details on using this script.
22 22
 
23
-Once you are up and running with Joyent, continue with the [Docker user guide](/userguide/). 
24 23
\ No newline at end of file
24
+Once you are up and running with Joyent, continue with the [Docker user guide](../userguide/). 
25 25
\ No newline at end of file
... ...
@@ -44,14 +44,14 @@ containers run directly on your localhost. This means you can address ports on a
44 44
 Docker container using standard localhost addressing such as `localhost:8000` or
45 45
 `0.0.0.0:8376`.
46 46
 
47
-![Linux Architecture Diagram](/installation/images/linux_docker_host.svg)
47
+![Linux Architecture Diagram](images/linux_docker_host.svg)
48 48
 
49 49
 In an OS X installation, the `docker` daemon is running inside a Linux VM called
50 50
 `default`. The `default` is a lightweight Linux VM made specifically to run
51 51
 the Docker daemon on Mac OS X. The VM runs completely from RAM, is a small ~24MB
52 52
 download, and boots in approximately 5s.
53 53
 
54
-![OSX Architecture Diagram](/installation/images/mac_docker_host.svg)
54
+![OSX Architecture Diagram](images/mac_docker_host.svg)
55 55
 
56 56
 In OS X, the Docker host address is the address of the Linux VM. When you start
57 57
 the VM with `docker-machine` it is assigned an IP address. When you start a
... ...
@@ -73,14 +73,14 @@ and choosing "Open" from the pop-up menu.
73 73
 
74 74
     The installer launches the "Install Docker Toolbox" dialog.
75 75
 
76
-    ![Install Docker Toolbox](/installation/images/mac-welcome-page.png)
76
+    ![Install Docker Toolbox](images/mac-welcome-page.png)
77 77
 
78 78
 4. Press "Continue" to install the toolbox.
79 79
 
80 80
     The installer presents you with options to customize the standard
81 81
     installation.
82 82
 
83
-    ![Standard install](/installation/images/mac-page-two.png)
83
+    ![Standard install](images/mac-page-two.png)
84 84
 
85 85
     By default, the standard Docker Toolbox installation:
86 86
 
... ...
@@ -95,14 +95,14 @@ and choosing "Open" from the pop-up menu.
95 95
 
96 96
      The system prompts you for your password.
97 97
 
98
-     ![Password prompt](/installation/images/mac-password-prompt.png)
98
+     ![Password prompt](images/mac-password-prompt.png)
99 99
 
100 100
 6. Provide your password to continue with the installation.
101 101
 
102 102
      When it completes, the installer provides you with some information you can
103 103
      use to complete some common tasks.
104 104
 
105
-     ![All finished](/installation/images/mac-page-finished.png)
105
+     ![All finished](images/mac-page-finished.png)
106 106
 
107 107
 7. Press "Close" to exit.
108 108
 
... ...
@@ -135,7 +135,7 @@ There are two ways to use the installed tools, from the Docker Quickstart Termin
135 135
 
136 136
     Once the launch completes, the Docker Quickstart Terminal reports:
137 137
 
138
-     ![All finished](/installation/images/mac-success.png)
138
+     ![All finished](images/mac-success.png)
139 139
 
140 140
     Now, you can run `docker` commands.
141 141
 
... ...
@@ -187,8 +187,6 @@ different shell such as C Shell but the commands are the same.
187 187
 
188 188
     This creates a new `default` VM in VirtualBox.
189 189
 
190
-    ![default](/installation/images/default.png)
191
-
192 190
     The command also creates a machine configuration in the
193 191
     `~/.docker/machine/machines/default` directory. You only need to run the
194 192
     `create` command once. Then, you can use `docker-machine` to start, stop,
... ...
@@ -313,7 +311,7 @@ The `ACTIVE` machine, in this case `default`, is the one your environment is poi
313 313
 
314 314
 4. Enter the `http://localhost:49157` address (`localhost` is `0.0.0.0`) in your browser:
315 315
 
316
-    ![Bad Address](/installation/images/bad_host.png)
316
+    ![Bad Address](images/bad_host.png)
317 317
 
318 318
     This didn't work. The reason it doesn't work is your `DOCKER_HOST` address is
319 319
     not the localhost address (0.0.0.0) but is instead the address of the
... ...
@@ -326,7 +324,7 @@ The `ACTIVE` machine, in this case `default`, is the one your environment is poi
326 326
 
327 327
 6. Enter the `http://192.168.59.103:49157` address in your browser:
328 328
 
329
-    ![Correct Addressing](/installation/images/good_host.png)
329
+    ![Correct Addressing](images/good_host.png)
330 330
 
331 331
     Success!
332 332
 
... ...
@@ -370,7 +368,7 @@ The next exercise demonstrates how to do this.
370 370
 
371 371
 7. Open the site in a browser:
372 372
 
373
-    ![My site page](/installation/images/newsite_view.png)
373
+    ![My site page](images/newsite_view.png)
374 374
 
375 375
 8. Try adding a page to your `$HOME/site` in real time.
376 376
 
... ...
@@ -378,7 +376,7 @@ The next exercise demonstrates how to do this.
378 378
 
379 379
 9. Open the new page in the browser.
380 380
 
381
-    ![Cool page](/installation/images/cool_view.png)
381
+    ![Cool page](images/cool_view.png)
382 382
 
383 383
 10. Stop and then remove your running `mysite` container.
384 384
 
... ...
@@ -427,6 +425,6 @@ Use `docker-machine help` to list the full command line reference for Docker Mac
427 427
 information about using SSH or SCP to access a VM, see [the Docker Machine
428 428
 documentation](https://docs.docker.com/machine/).
429 429
 
430
-You can continue with the [Docker User Guide](/userguide). If you are
430
+You can continue with the [Docker User Guide](../userguide). If you are
431 431
 interested in using the Kitematic GUI, see the [Kitematic user
432
-guide](/kitematic/userguide/).
432
+guide](https://docs.docker.com/kitematic/userguide/).
... ...
@@ -99,7 +99,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
99 99
 
100 100
 >**Warning**: The `docker` group is equivalent to the `root` user; For details
101 101
 >on how this impacts security in your system, see [*Docker Daemon Attack
102
->Surface*](/articles/security/#docker-daemon-attack-surface) for details.
102
+>Surface*](../articles/security.md#docker-daemon-attack-surface) for details.
103 103
 
104 104
 To create the `docker` group and add your user:
105 105
 
... ...
@@ -142,7 +142,7 @@ $ sudo systemctl enable docker.service
142 142
 
143 143
 If you need to add an HTTP Proxy, set a different directory or partition for the
144 144
 Docker runtime files, or make other customizations, read our systemd article to
145
-learn how to [customize your systemd Docker daemon options](/articles/systemd/).
145
+learn how to [customize your systemd Docker daemon options](../articles/systemd.md).
146 146
 
147 147
 ### Use the btrfs storage engine
148 148
 
... ...
@@ -12,7 +12,7 @@ parent = "smn_cloud"
12 12
 
13 13
 Installing Docker on Ubuntu provided by Rackspace is pretty
14 14
 straightforward, and you should mostly be able to follow the
15
-[*Ubuntu*](../ubuntulinux/#ubuntu-linux) installation guide.
15
+[*Ubuntu*](ubuntulinux.md#ubuntu-linux) installation guide.
16 16
 
17 17
 **However, there is one caveat:**
18 18
 
... ...
@@ -83,5 +83,5 @@ Verify the kernel was updated
83 83
 
84 84
     # nice! 3.8.
85 85
 
86
-Now you can finish with the [*Ubuntu*](../ubuntulinux/#ubuntu-linux)
86
+Now you can finish with the [*Ubuntu*](ubuntulinux.md#ubuntu-linux)
87 87
 instructions.
... ...
@@ -126,7 +126,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
126 126
 
127 127
 >**Warning**: The `docker` group is equivalent to the `root` user; For details
128 128
 >on how this impacts security in your system, see [*Docker Daemon Attack
129
->Surface*](/articles/security/#docker-daemon-attack-surface) for details.
129
+>Surface*](../articles/security.md#docker-daemon-attack-surface) for details.
130 130
 
131 131
 To create the `docker` group and add your user:
132 132
 
... ...
@@ -152,7 +152,7 @@ To ensure Docker starts when you boot your system, do the following:
152 152
 
153 153
 If you need to add an HTTP Proxy, set a different directory or partition for the
154 154
 Docker runtime files, or make other customizations, read our Systemd article to
155
-learn how to [customize your Systemd Docker daemon options](/articles/systemd/).
155
+learn how to [customize your Systemd Docker daemon options](../articles/systemd.md).
156 156
 
157 157
 
158 158
 ## Uninstall
... ...
@@ -27,10 +27,10 @@ parent = "smn_cloud"
27 27
 7. Click the *Continue Your Order* button at the bottom right.
28 28
 8. Fill out VSI *hostname* and *domain*.
29 29
 9. Insert the required *User Metadata* and place the order.
30
-10. Then continue with the [*Ubuntu*](../ubuntulinux/#ubuntu-linux)
30
+10. Then continue with the [*Ubuntu*](ubuntulinux.md#ubuntu-linux)
31 31
    instructions.
32 32
 
33 33
 ## What next?
34 34
 
35
-Continue with the [User Guide](/userguide/).
35
+Continue with the [User Guide](../userguide/).
36 36
 
... ...
@@ -197,7 +197,7 @@ makes the ownership of the Unix socket read/writable by the `docker` group.
197 197
 
198 198
 >**Warning**: The `docker` group is equivalent to the `root` user; For details
199 199
 >on how this impacts security in your system, see [*Docker Daemon Attack
200
->Surface*](/articles/security/#docker-daemon-attack-surface) for details.
200
+>Surface*](../articles/security.md#docker-daemon-attack-surface) for details.
201 201
 
202 202
 To create the `docker` group and add your user:
203 203
 
... ...
@@ -35,7 +35,7 @@ Your machine must be running Windows 7, 8/8.1 or newer to run Docker. Windows 10
35 35
 
36 36
 1. Right click the Windows Start Menu and choose **System**.
37 37
 
38
-    ![Which version](/installation/images/win_ver.png)
38
+    ![Which version](images/win_ver.png)
39 39
 
40 40
     If you are using an unsupported version of Windows, you should consider
41 41
     upgrading your operating system in order to try out Docker.
... ...
@@ -48,7 +48,7 @@ and virtualization support is enabled in BIOS and recognized by Windows.
48 48
 	  Choose **Start > Task Manager** and navigate to the **Performance** tab.
49 49
 	  Under **CPU** you should see the following:
50 50
 
51
-      ![Release page](/installation/images/virtualization.png)
51
+      ![Release page](images/virtualization.png)
52 52
 
53 53
     If virtualization is not enabled on your system, follow the manufacturer's instructions for enabling it.
54 54
 
... ...
@@ -76,13 +76,13 @@ containers run directly on your localhost. This means you can address ports on a
76 76
 Docker container using standard localhost addressing such as `localhost:8000` or
77 77
 `0.0.0.0:8376`.
78 78
 
79
-![Linux Architecture Diagram](/installation/images/linux_docker_host.svg)
79
+![Linux Architecture Diagram](images/linux_docker_host.svg)
80 80
 
81 81
 In an Windows installation, the `docker` daemon is running inside a Linux virtual
82 82
 machine. You use the Windows Docker client to talk to the Docker host VM. Your
83 83
 Docker containers run inside this host.
84 84
 
85
-![Windows Architecture Diagram](/installation/images/win_docker_host.svg)
85
+![Windows Architecture Diagram](images/win_docker_host.svg)
86 86
 
87 87
 In Windows, the Docker host address is the address of the Linux VM. When you
88 88
 start the VM with `docker-machine` it is assigned an IP address. When you start
... ...
@@ -103,7 +103,7 @@ installer.
103 103
 
104 104
     The installer launches the "Setup - Docker Toolbox" dialog.
105 105
 
106
-    ![Install Docker Toolbox](/installation/images/win-welcome.png)
106
+    ![Install Docker Toolbox](images/win-welcome.png)
107 107
 
108 108
 4. Press "Next" to install the toolbox.
109 109
 
... ...
@@ -122,14 +122,14 @@ installer.
122 122
 
123 123
      The system prompts you for your password.
124 124
 
125
-     ![Install](/installation/images/win-page-6.png)
125
+     ![Install](images/win-page-6.png)
126 126
 
127 127
 6. Press "Install"  to continue with the installation.
128 128
 
129 129
      When it completes, the installer provides you with some information you can
130 130
      use to complete some common tasks.
131 131
 
132
-     ![All finished](/installation/images/windows-finish.png)
132
+     ![All finished](images/windows-finish.png)
133 133
 
134 134
 7. Press "Finish" to exit.
135 135
 
... ...
@@ -362,6 +362,6 @@ delete that file yourself.
362 362
 
363 363
 ## Learn more
364 364
 
365
-You can continue with the [Docker User Guide](/userguide). If you are
365
+You can continue with the [Docker User Guide](../userguide). If you are
366 366
 interested in using the Kitematic GUI, see the [Kitematic user
367
-guide](/kitematic/userguide/).
367
+guide](https://docs.docker.com/kitematic/userguide/).
... ...
@@ -88,7 +88,7 @@ run on the same system, or you can connect a Docker client to a remote Docker
88 88
 daemon. The Docker client and daemon communicate via sockets or through a
89 89
 RESTful API.
90 90
 
91
-![Docker Architecture Diagram](/article-img/architecture.svg)
91
+![Docker Architecture Diagram](../article-img/architecture.svg)
92 92
 
93 93
 ### The Docker daemon
94 94
 As shown in the diagram above, the Docker daemon runs on a host machine. The
... ...
@@ -285,9 +285,9 @@ BSD Jails or Solaris Zones.
285 285
 
286 286
 ## Next steps
287 287
 ### Installing Docker
288
-Visit the [installation section](/installation/#installation).
288
+Visit the [installation section](../installation/#installation).
289 289
 
290 290
 ### The Docker user guide
291
-[Learn Docker in depth](/userguide/).
291
+[Learn Docker in depth](../userguide/).
292 292
 
293 293
 
... ...
@@ -42,7 +42,7 @@ The built-in LXC execution driver is deprecated for an external implementation.
42 42
 The lxc-conf flag and API fields will also be removed.
43 43
 
44 44
 ### Old Command Line Options
45
-**Deprecated In Release: [v1.8.0](/release-notes/#docker-engine-1-8-0)**
45
+**Deprecated In Release: [v1.8.0](../release-notes.md#docker-engine-1-8-0)**
46 46
 
47 47
 **Target For Removal In Release: v1.10**
48 48
 
... ...
@@ -31,8 +31,8 @@ https://github.com/docker/docker/blob/master/LICENSE)
31 31
 
32 32
 Docker currently runs only on Linux, but you can use VirtualBox to run Docker in
33 33
 a virtual machine on your box, and get the best of both worlds. Check out the
34
-[*Mac OS X*](/installation/mac/) and [*Microsoft
35
-Windows*](/installation/windows/) installation guides. The small Linux
34
+[*Mac OS X*](../installation/mac.md) and [*Microsoft
35
+Windows*](../installation/windows.md) installation guides. The small Linux
36 36
 distribution Docker Machine can be run inside virtual machines on these two
37 37
 operating systems.
38 38
 
... ...
@@ -77,7 +77,7 @@ with several powerful functionalities:
77 77
 
78 78
  - *Automatic build.* Docker includes [*a tool for developers to automatically
79 79
  assemble a container from their source
80
- code*](/reference/builder/), with full control over application
80
+ code*](../reference/builder.md), with full control over application
81 81
  dependencies, build tools, packaging etc. They are free to use `make`, `maven`,
82 82
  `chef`, `puppet`, `salt,` Debian packages, RPMs, source tarballs, or any
83 83
  combination of the above, regardless of the configuration of the machines.
... ...
@@ -90,8 +90,7 @@ with several powerful functionalities:
90 90
  uploads and downloads, similar to `git pull`, so new versions of a container
91 91
  can be transferred by only sending diffs.
92 92
 
93
- - *Component re-use.* Any container can be used as a [*"base image"*](
94
- /reference/glossary/#image) to create more specialized components. This can
93
+ - *Component re-use.* Any container can be used as a [*"base image"*](../reference/glossary.md#image) to create more specialized components. This can
95 94
  be done manually or as part of an automated build. For example you can prepare
96 95
  the ideal Python environment, and use it as a base for 10 different
97 96
  applications. Your ideal PostgreSQL setup can be re-used for all your future
... ...
@@ -101,7 +100,7 @@ with several powerful functionalities:
101 101
  where thousands of people have uploaded useful images: anything from Redis,
102 102
  CouchDB, PostgreSQL to IRC bouncers to Rails app servers to Hadoop to base 
103 103
  images for various Linux distros. The
104
- [*registry*](/registry/) also
104
+ [*registry*](https://docs.docker.com/registry/) also
105 105
  includes an official "standard library" of useful containers maintained by the
106 106
  Docker team. The registry itself is open-source, so anyone can deploy their own
107 107
  registry to store and transfer private containers, for internal server
... ...
@@ -137,10 +136,10 @@ thousands or even millions of containers running in parallel.
137 137
 ### How do I connect Docker containers?
138 138
 
139 139
 Currently the recommended way to link containers is via the link primitive. You
140
-can see details of how to [work with links here](/userguide/dockerlinks).
140
+can see details of how to [work with links here](../userguide/dockerlinks.md).
141 141
 
142 142
 Also useful for more flexible service portability is the [Ambassador linking
143
-pattern](/articles/ambassador_pattern_linking/).
143
+pattern](../articles/ambassador_pattern_linking.md).
144 144
 
145 145
 ### How do I run more than one process in a Docker container?
146 146
 
... ...
@@ -149,7 +148,7 @@ http://supervisord.org/), runit, s6, or daemontools can do the trick. Docker
149 149
 will start up the process management daemon which will then fork to run
150 150
 additional processes. As long as the processor manager daemon continues to run,
151 151
 the container will continue to as well. You can see a more substantial example
152
-[that uses supervisord here](/articles/using_supervisord/).
152
+[that uses supervisord here](../articles/using_supervisord.md).
153 153
 
154 154
 ### What platforms does Docker run on?
155 155
 
... ...
@@ -271,4 +270,4 @@ You can find more answers on:
271 271
 - [Ask questions on Stackoverflow](http://stackoverflow.com/search?q=docker) 
272 272
 - [Join the conversation on Twitter](http://twitter.com/docker)
273 273
 
274
-Looking for something else to read? Checkout the [User Guide](/userguide/).
274
+Looking for something else to read? Checkout the [User Guide](../userguide/).
... ...
@@ -73,7 +73,7 @@ Docker consists of:
73 73
 
74 74
 ## About this guide
75 75
 
76
-The [Understanding Docker section](/introduction/understanding-docker) will help you:
76
+The [Understanding Docker section](../introduction/understanding-docker.md) will help you:
77 77
 
78 78
  - See how Docker works at a high level
79 79
  - Understand the architecture of Docker
... ...
@@ -83,19 +83,19 @@ The [Understanding Docker section](/introduction/understanding-docker) will help
83 83
 
84 84
 ### Installation guides
85 85
 
86
-The [installation section](/installation/#installation) will show you how to
87
-install Docker on a variety of platforms.
86
+The [installation section](../installation) will show you how to install Docker
87
+on a variety of platforms.
88 88
 
89 89
 
90 90
 ### Docker user guide
91 91
 
92 92
 To learn about Docker in more detail and to answer questions about usage and
93
-implementation, check out the [Docker User Guide](/userguide/).
93
+implementation, check out the [Docker User Guide](../userguide/).
94 94
 
95 95
 ## Release notes
96 96
 
97 97
 A summary of the changes in each release in the current series can now be found
98
-on the separate [Release Notes page](/release-notes/)
98
+on the separate [Release Notes page](https://docs.docker.com/release-notes)
99 99
 
100 100
 ## Feature Deprecation Policy
101 101
 
... ...
@@ -110,7 +110,7 @@ release and plan their migration away from those features, and (if applicable)
110 110
 towards the replacement features as soon as possible.
111 111
 
112 112
 The complete list of deprecated features can be found on the
113
-[Deprecated Features page](deprecated).
113
+[Deprecated Features page](deprecated.md).
114 114
 
115 115
 ## Licensing
116 116
 
... ...
@@ -12,7 +12,7 @@ parent = "smn_release_notes"
12 12
 # Deprecated Features
13 13
 
14 14
 To see the complete list of deprecated features please see the
15
-[Deprecated Features](deprecated) page.
15
+[Deprecated Features](deprecated.md) page.
16 16
 
17 17
 # Removed Features
18 18
 
... ...
@@ -47,13 +47,13 @@ repository](https://github.com/docker/docker/blob/master/CHANGELOG.md).
47 47
 
48 48
 | Feature                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
49 49
 |------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
50
-| 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/#add-labels-to-images-the-label-instruction) in the documentation.                                                                                                                                                    |
50
+| 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.                                                                                                                                                    |
51 51
 | 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).                                                                                                           |
52
-| 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](https://docs.docker.com/reference/run/#logging-drivers-log-driver).                                                                                                                                            |
53
-| 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](https://docs.docker.com/reference/commandline/cli/#listing-image-digests).           |
54
-| Custom cgroups               | Containers are made from a combination of namespaces, capabilities, and cgroups. Docker already supports custom namespaces and capabilities. Additionally, in this release we’ve 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](https://docs.docker.com/reference/commandline/cli/#create).                                   |
55
-| 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](https://docs.docker.com/reference/commandline/cli/#default-ulimits) in this documentation.                                                                                                                                                                                   |
56
-| 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](https://docs.docker.com/reference/commandline/cli/#commit) and [import](https://docs.docker.com/reference/commandline/cli/#import). |
52
+| 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).                                                                                                                                            |
53
+| 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).           |
54
+| Custom cgroups               | Containers are made from a combination of namespaces, capabilities, and cgroups. Docker already supports custom namespaces and capabilities. Additionally, in this release we’ve 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).                                   |
55
+| 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.                                                                                                                                                                                   |
56
+| 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). |
57 57
 
58 58
 ### Known issues in Engine
59 59
 
... ...
@@ -158,4 +158,4 @@ address changes.
158 158
 
159 159
 ## Docker Hub Enterprise & Commercially Supported Docker Engine
160 160
 
161
-See the [DHE and CS Docker Engine release notes](docker-hub-enterprise/release-notes.md).
161
+See the [DHE and CS Docker Engine release notes](https://docs.docker.com/docker-hub-enterprise/release-notes.md).
162 162
deleted file mode 100755
... ...
@@ -1,107 +0,0 @@
1
-#!/bin/bash -ex
2
-
3
-# Populate an array with just docker dirs and one with content dirs
4
-content_dir=(`ls -d /docs/content/*`)
5
-
6
-# Loop content not of docker/
7
-#
8
-# Sed to process GitHub Markdown
9
-# 1-2 Remove comment code from metadata block
10
-# 3 Remove .md extension from link text
11
-# 4 Change ](/ to ](/project/ in links
12
-# 5 Change ](word) to ](/project/word)
13
-# 6 Change ](../../ to ](/project/
14
-# 7 Change ](../ to ](/project/word)
15
-# 
16
-for i in "${content_dir[@]}"
17
-do
18
-   :
19
-   case $i in
20
-      "/docs/content/docker-trusted-registry")
21
-      ;;
22
-      "/docs/content/docker-hub")
23
-      ;;
24
-      "/docs/content/windows")
25
-      ;;
26
-      "/docs/content/mac")
27
-      ;;
28
-      "/docs/content/linux")
29
-      ;;
30
-      "/docs/content/registry")
31
-      y=${i##*/}
32
-      find $i -type f -name "*.md" -not -name "*.compare.md" -exec sed -i.old \
33
-        -e '/^<!\(--\)\{0,1\}\[\(end-\)\{0,1\}metadata\]\(--\)\{0,1\}>/g' \
34
-        -e 's/\(\][(]\)\(\.*\/\)*/\1/g' \
35
-        -e 's/\(\][(]\)\([A-Za-z0-9_/-]\{1,\}\)\(\.md\)\{0,1\}\(#\{0,1\}\(#[A-Za-z0-9_-]*\)\{0,1\}\)[)]/\1\/'$y'\/\2\4)/g' \
36
-        {} \;
37
-      ;;
38
-      "/docs/content/compose")
39
-         y=${i##*/}
40
-        find $i -type f -name "*.md" -exec sed -i.old \
41
-        -e '/^<!.*metadata]>/g' \
42
-        -e '/^<!.*end-metadata.*>/g' \
43
-        -e 's/\(\]\)\([(]\)\(\/\)/\1\2\/'$y'\//g' \
44
-        -e 's/\(\][(]\)\([A-z].*\)\(\.md\)/\1\/'$y'\/\2/g' \
45
-        -e 's/\([(]\)\(.*\)\(\.md\)/\1\2/g'  \
46
-        -e 's/\(\][(]\)\(\.\/\)/\1\/'$y'\//g' \
47
-        -e 's/\(\][(]\)\(\.\.\/\.\.\/\)/\1\/'$y'\//g' \
48
-        -e 's/\(\][(]\)\(\.\.\/\)/\1\/'$y'\//g' {} \;      
49
-      ;;
50
-      "/docs/content/swarm")
51
-         y=${i##*/}
52
-         find $i -type f -name "*.md" -exec sed -i.old \
53
-        -e '/^<!.*metadata]>/g' \
54
-        -e '/^<!.*end-metadata.*>/g' \
55
-        -e 's/\(\]\)\([(]\)\(\/\)/\1\2\/'$y'\//g' \
56
-        -e 's/\(\][(]\)\([A-z].*\)\(\.md\)/\1\/'$y'\/\2/g' \
57
-        -e 's/\([(]\)\(.*\)\(\.md\)/\1\2/g'  \
58
-        -e 's/\(\][(]\)\(\.\/\)/\1\/'$y'\//g' \
59
-        -e 's/\(\][(]\)\(\.\.\/\.\.\/\)/\1\/'$y'\//g' \
60
-        -e 's/\(\][(]\)\(\.\.\/\)/\1\/'$y'\//g' {} \;     
61
-      ;;
62
-      "/docs/content/machine")
63
-         y=${i##*/}
64
-        find $i -type f -name "*.md" -exec sed -i.old \
65
-        -e '/^<!.*metadata]>/g' \
66
-        -e '/^<!.*end-metadata.*>/g' \
67
-        -e 's/\(\]\)\([(]\)\(\/\)/\1\2\/'$y'\//g' \
68
-        -e 's/\(\][(]\)\([A-z].*\)\(\.md\)/\1\/'$y'\/\2/g' \
69
-        -e 's/\([(]\)\(.*\)\(\.md\)/\1\2/g'  \
70
-        -e 's/\(\][(]\)\(\.\/\)/\1\/'$y'\//g' \
71
-        -e 's/\(\][(]\)\(\.\.\/\.\.\/\)/\1\/'$y'\//g' \
72
-        -e 's/\(\][(]\)\(\.\.\/\)/\1\/'$y'\//g' {} \;         
73
-      ;;
74
-      "/docs/content/kitematic")
75
-         y=${i##*/}
76
-        find $i -type f -name "*.md" -exec sed -i.old \
77
-        -e '/^<!.*metadata]>/g' \
78
-        -e '/^<!.*end-metadata.*>/g' \
79
-        -e 's/\(\]\)\([(]\)\(\/\)/\1\2\/'$y'\//g' \
80
-        -e 's/\(\][(]\)\([A-z].*\)\(\.md\)/\1\/'$y'\/\2/g' \
81
-        -e 's/\([(]\)\(.*\)\(\.md\)/\1\2/g'  \
82
-        -e 's/\(\][(]\)\(\.\/\)/\1\/'$y'\//g' \
83
-        -e 's/\(\][(]\)\(\.\.\/\.\.\/\)/\1\/'$y'\//g' \
84
-        -e 's/\(\][(]\)\(\.\.\/\)/\1\/'$y'\//g' {} \;         
85
-      ;;
86
-      "/docs/content/opensource")
87
-         y=${i##*/}
88
-        find $i -type f -name "*.md" -exec sed -i.old \
89
-        -e '/^<!.*metadata]>/g' \
90
-        -e '/^<!.*end-metadata.*>/g' \
91
-        -e 's/\(\]\)\([(]\)\(\/\)/\1\2\/'$y'\//g' \
92
-        -e 's/\(\][(]\)\([A-z].*\)\(\.md\)/\1\/'$y'\/\2/g' \
93
-        -e 's/\([(]\)\(.*\)\(\.md\)/\1\2/g'  \
94
-        -e 's/\(\][(]\)\(\.\/\)/\1\/'$y'\//g' \
95
-        -e 's/\(\][(]\)\(\.\.\/\.\.\/\)/\1\/'$y'\//g' \
96
-        -e 's/\(\][(]\)\(\.\.\/\)/\1\/'$y'\//g' {} \;         
97
-      ;;
98
-      *)
99
-         y=${i##*/}
100
-        find $i -type f -name "*.md" -exec sed -i.old \
101
-        -e '/^<!.*metadata]>/g' \
102
-        -e '/^<!.*end-metadata.*>/g' {} \;        
103
-      ;;
104
-      esac
105
-done
106
-
107
-
... ...
@@ -54,7 +54,7 @@ A design proposal solves a problem or adds a feature to the Docker software.
54 54
 The process for submitting design proposals requires two pull requests, one
55 55
 for the design and one for the implementation.
56 56
 
57
-![Simple process](/project/images/proposal.png)
57
+![Simple process](images/proposal.png)
58 58
 
59 59
 The important thing to notice is that both the design pull request and the
60 60
 implementation pull request go through a review. In other words, there is
... ...
@@ -12,8 +12,8 @@ weight=7
12 12
 # Coding style checklist
13 13
 
14 14
 This checklist summarizes the material you experienced working through [make a
15
-code contribution](/project/make-a-contribution) and [advanced
16
-contributing](/project/advanced-contributing). The checklist applies to both 
15
+code contribution](make-a-contribution.md) and [advanced
16
+contributing](advanced-contributing.md). The checklist applies to both 
17 17
 program code and documentation code.
18 18
 
19 19
 ## Change and commit code
... ...
@@ -98,14 +98,14 @@ You create and manage PRs on GitHub:
98 98
 
99 99
     You should see the latest activity from your branch.
100 100
 
101
-    ![Latest commits](/project/images/latest_commits.png)
101
+    ![Latest commits](images/latest_commits.png)
102 102
 
103 103
 
104 104
 2. Click "Compare & pull request."
105 105
 
106 106
     The system displays the pull request dialog. 
107 107
 
108
-    ![PR dialog](/project/images/to_from_pr.png)
108
+    ![PR dialog](images/to_from_pr.png)
109 109
 
110 110
     The pull request compares your changes to the `master` branch on the
111 111
     `docker/docker` repository.
... ...
@@ -114,25 +114,25 @@ You create and manage PRs on GitHub:
114 114
 
115 115
     GitHub helps you out by searching for the issue as you type.
116 116
 
117
-    ![Fixes issue](/project/images/fixes_num.png)
117
+    ![Fixes issue](images/fixes_num.png)
118 118
 
119 119
 4. Scroll down and verify the PR contains the commits and changes you expect.
120 120
 
121 121
     For example, is the file count correct? Are the changes in the files what
122 122
     you expect?
123 123
 
124
-    ![Commits](/project/images/commits_expected.png)
124
+    ![Commits](images/commits_expected.png)
125 125
 
126 126
 5. Press "Create pull request".
127 127
 
128 128
     The system creates the request and opens it for you in the `docker/docker`
129 129
     repository.
130 130
 
131
-    ![Pull request made](/project/images/pull_request_made.png)
131
+    ![Pull request made](images/pull_request_made.png)
132 132
 
133 133
 
134 134
 ## Where to go next
135 135
 
136 136
 Congratulations, you've created your first pull request to Docker. The next
137 137
 step is for you learn how to [participate in your PR's
138
-review](/project/review-pr/).
138
+review](review-pr.md).
... ...
@@ -22,7 +22,7 @@ If a question about syntactical, grammatical, or lexical practice comes up,
22 22
 refer to the AP guide first. If you don’t have a copy of (or online subscription
23 23
 to) the AP guide, you can almost always find an answer to a specific question by
24 24
 searching the web. If you can’t find an answer, please ask a
25
-[maintainer](https://github.com/docker/docker/blob/master/docs/MAINTAINERS) and
25
+[maintainer](https://github.com/docker/docker/blob/master/MAINTAINERS) and
26 26
 we will find the answer.
27 27
 
28 28
 That said, please don't get too hung up on using correct style. We'd rather have
... ...
@@ -101,7 +101,7 @@ To claim an issue:
101 101
 
102 102
     A list of the open issues appears. 
103 103
 
104
-    ![Open issues](/project/images/issue_list.png)
104
+    ![Open issues](images/issue_list.png)
105 105
 
106 106
 3. From the "Labels" drop-down, select <strong class="gh-label beginner">exp/beginner</strong>.
107 107
 
... ...
@@ -122,7 +122,7 @@ To claim an issue:
122 122
 7. Your issue # will be different depending on what you claimed. After a moment, Gordon the Docker 
123 123
 bot, changes the issue status to claimed. The following example shows issue #11038.
124 124
 
125
-    ![Easy issue](/project/images/easy_issue.png)
125
+    ![Easy issue](images/easy_issue.png)
126 126
 
127 127
 8. Make a note of the issue number; you will need it for later. 
128 128
 
... ...
@@ -234,4 +234,4 @@ To sync your repository:
234 234
 
235 235
 At this point, you know what you want to work on and you have a branch to do
236 236
 your work in.  Go onto the next section to learn [how to work on your
237
-changes](/project/work-issue/).
237
+changes](work-issue.md).
... ...
@@ -81,7 +81,7 @@ register:
81 81
 
82 82
 1. In your browser open <a href="https://webchat.freenode.net" target="_blank">https://webchat.freenode.net</a>
83 83
 
84
-    ![Login to webchat screen](/project/images/irc_connect.png)
84
+    ![Login to webchat screen](images/irc_connect.png)
85 85
 
86 86
 2. Fill out the form.
87 87
 
... ...
@@ -106,14 +106,14 @@ register:
106 106
     the Webchat web page is a command line bar. Just above the command line bar
107 107
     a message is shown asking you to register.
108 108
 
109
-    ![Registration needed screen](/project/images/irc_after_login.png)
109
+    ![Registration needed screen](images/irc_after_login.png)
110 110
 
111 111
 4. Register your nickname by entering the following command in the
112 112
 command line bar:
113 113
 
114 114
         /msg NickServ REGISTER yourpassword youremail@example.com
115 115
 
116
-    ![Registering screen](/project/images/register_nic.png)
116
+    ![Registering screen](images/register_nic.png)
117 117
 
118 118
     This command line bar is also the entry field that you will use for entering 
119 119
     chat messages into IRC chat channels after you have registered and joined a
... ...
@@ -125,7 +125,7 @@ command line bar:
125 125
 
126 126
 5. Open your email client and look for the email.
127 127
 
128
-    ![Login screen](/project/images/register_email.png)
128
+    ![Login screen](images/register_email.png)
129 129
 
130 130
 6. Back in the browser, complete the registration according to the email
131 131
 by entering the following command into the webchat command line bar:
... ...
@@ -147,7 +147,7 @@ features. To use IRCCloud:
147 147
 
148 148
     The following web page is displayed in your browser:
149 149
 
150
-    ![IRCCloud Register screen](/project/images/irccloud-join.png)
150
+    ![IRCCloud Register screen](images/irccloud-join.png)
151 151
   
152 152
 2. If this is your first time using IRCCloud enter a valid email address in the
153 153
 form. People who have already registered with IRCCloud can select the "sign in
... ...
@@ -162,7 +162,7 @@ from IRCCloud and follow the instructions provided in the email.
162 162
 4. After following the instructions in your email you should have an IRCCloud
163 163
 Client web page in your browser:
164 164
 
165
-    ![IRCCloud](/project/images/irccloud-register-nick.png)
165
+    ![IRCCloud](images/irccloud-register-nick.png)
166 166
 
167 167
     The message shown above may appear indicating that you need to register your
168 168
     nickname. 
... ...
@@ -176,7 +176,7 @@ at the bottom of the IRCCloud Client:
176 176
 
177 177
 6. Check your email for an invite to freenode.net:
178 178
 
179
-    ![Login screen](/project/images/register_email.png)
179
+    ![Login screen](images/register_email.png)
180 180
 
181 181
 7. Back in the browser, complete the registration according to the email.
182 182
 
... ...
@@ -212,7 +212,7 @@ You can also join the `#docker-dev` group:
212 212
 
213 213
 To ask questions to the group just type messages in the command line bar:
214 214
 
215
-  ![Web Chat Screen](/project/images/irc_chat.png)
215
+  ![Web Chat Screen](images/irc_chat.png)
216 216
 
217 217
 ## Learning more about IRC
218 218
 
... ...
@@ -25,7 +25,7 @@ In this guide, you work through Docker's basic contribution workflow by fixing a
25 25
 single *beginner* issue in the `docker/docker` repository. The workflow
26 26
 for fixing simple issues looks like this:
27 27
 
28
-![Simple process](/project/images/existing_issue.png)
28
+![Simple process](images/existing_issue.png)
29 29
 
30 30
 All Docker repositories have code and documentation. You use this same workflow
31 31
 for either content type. For example, you can find and fix doc or code issues.
... ...
@@ -38,4 +38,4 @@ contributions. When you reach that point in the flow, we make sure to tell you.
38 38
 ## Where to go next
39 39
 
40 40
 Now that you know a little about the contribution process, go to the next section
41
-to [find an issue you want to work on](/project/find-an-issue/).
41
+to [find an issue you want to work on](find-an-issue.md).
... ...
@@ -27,7 +27,7 @@ First to review your pull request is Gordon. Gordon is fast. He checks your
27 27
 pull request (PR) for common problems like a missing signature. If Gordon finds a
28 28
 problem, he'll send an email through your GitHub user account:
29 29
 
30
-![Gordon](/project/images/gordon.jpeg)
30
+![Gordon](images/gordon.jpeg)
31 31
 
32 32
 Our build bot system starts building your changes while Gordon sends any emails. 
33 33
 
... ...
@@ -138,4 +138,4 @@ If you enjoyed contributing, let us know by completing another beginner
138 138
 issue or two. We really appreciate the help. 
139 139
 
140 140
 If you are very experienced and want to make a major change, go on to 
141
-[learn about advanced contributing](/project/advanced-contributing).
141
+[learn about advanced contributing](advanced-contributing.md).
... ...
@@ -22,7 +22,7 @@ You use the `docker` repository and its `Dockerfile` to create a Docker image,
22 22
 run a Docker container, and develop code in the container. Docker itself builds,
23 23
 tests, and releases new Docker versions using this container.
24 24
 
25
-If you followed the procedures that <a href="/project/set-up-git" target="_blank">
25
+If you followed the procedures that <a href="/engine/project/set-up-git" target="_blank">
26 26
 set up Git for contributing</a>, you should have a fork of the `docker/docker`
27 27
 repository. You also created a branch called `dry-run-test`. In this section,
28 28
 you continue working with your fork on this branch.
... ...
@@ -105,7 +105,7 @@ environment.
105 105
         $ cd ~/repos/docker-fork 
106 106
         
107 107
 	If you are following along with this guide, you created a `dry-run-test`
108
-	branch when you <a href="/project/set-up-git" target="_blank"> set up Git for
108
+	branch when you <a href="/engine/project/set-up-git" target="_blank"> set up Git for
109 109
 	contributing</a>.
110 110
 
111 111
 4. Ensure you are on your `dry-run-test` branch.
... ...
@@ -205,7 +205,7 @@ build and run a `docker` binary in your container.
205 205
 
206 206
     At this point, you'll have about three terminals open.
207 207
 
208
-    ![Multiple terminals](/project/images/three_terms.png)
208
+    ![Multiple terminals](images/three_terms.png)
209 209
 
210 210
     Mac OS X users, make sure you run `eval "$(docker-machine env your_vm_name)"` in
211 211
     any new terminals.
... ...
@@ -226,7 +226,7 @@ build and run a `docker` binary in your container.
226 226
     `/go/src/github.com/docker/docker` directory. Try listing the contents to
227 227
     verify they are the same as that of your `docker-fork` repo.
228 228
 
229
-    ![List example](/project/images/list_example.png)
229
+    ![List example](images/list_example.png)
230 230
 
231 231
 
232 232
 3. Investigate your container bit. 
... ...
@@ -336,7 +336,7 @@ with the `make.sh` script.
336 336
     You should see the image load and return. Meanwhile, you
337 337
     can see the calls made via the debug session in your other terminal.
338 338
 
339
-    ![List example](/project/images/three_running.png)
339
+    ![List example](images/three_running.png)
340 340
 
341 341
 
342 342
 ## Restart a container with your source
... ...
@@ -423,4 +423,4 @@ Congratulations, you have successfully achieved Docker inception. At this point,
423 423
 you've set up your development environment and verified almost all the essential
424 424
 processes you need to contribute. Of course, before you start contributing, 
425 425
 [you'll need to learn one more piece of the development environment, the test
426
-framework](/project/test-and-docs/).
426
+framework](test-and-docs.md).
... ...
@@ -35,7 +35,7 @@ target="_blank">docker/docker repository</a>.
35 35
 
36 36
 3. Click the "Fork" button in the upper right corner of the GitHub interface.
37 37
 
38
-    ![Branch Signature](/project/images/fork_docker.png)
38
+    ![Branch Signature](images/fork_docker.png)
39 39
 
40 40
     GitHub forks the repository to your GitHub account. The original
41 41
     `docker/docker` repository becomes a new fork `YOUR_ACCOUNT/docker` under
... ...
@@ -46,7 +46,7 @@ target="_blank">docker/docker repository</a>.
46 46
     GitHub allows you to use HTTPS or SSH protocols for clones. You can use the
47 47
     `git` command line or clients like Subversion to clone a repository. 
48 48
 
49
-    ![Copy clone URL](/project/images/copy_url.png)
49
+    ![Copy clone URL](images/copy_url.png)
50 50
 
51 51
     This guide assume you are using the HTTPS protocol and the `git` command
52 52
     line. If you are comfortable with SSH and some other tool, feel free to use
... ...
@@ -177,7 +177,7 @@ the branch to your fork on GitHub:
177 177
 	
178 178
 5. Edit the file and add your email and location.
179 179
 
180
-    ![Add your information](/project/images/contributor-edit.png)
180
+    ![Add your information](images/contributor-edit.png)
181 181
 
182 182
     You can use any text editor you are comfortable with.
183 183
 
... ...
@@ -239,10 +239,10 @@ the branch to your fork on GitHub:
239 239
 11. Make sure the `dry-run-test` branch exists, that it has your commit, and the
240 240
 commit is signed.
241 241
 
242
-    ![Branch Signature](/project/images/branch-sig.png)
242
+    ![Branch Signature](images/branch-sig.png)
243 243
 
244 244
 ## Where to go next
245 245
 
246 246
 Congratulations, you have finished configuring both your local host environment
247 247
 and Git for contributing. In the next section you'll [learn how to set up and
248
-work in a Docker development container](/project/set-up-dev-env/).
248
+work in a Docker development container](set-up-dev-env.md).
... ...
@@ -115,7 +115,7 @@ you use the manager to install the `tar` and `xz` tools from the collection.
115 115
 
116 116
 	The system displays the **Schedule of Pending Actions Dialog**.
117 117
 
118
-    ![windows-mingw](/project/images/windows-mingw.png)
118
+    ![windows-mingw](images/windows-mingw.png)
119 119
     
120 120
 11. Press **Apply**
121 121
 
... ...
@@ -145,7 +145,7 @@ You'll need to add the compiler to your `Path` environment variable.
145 145
 5. Locate the **System variables** area and scroll to the **Path**
146 146
    variable.
147 147
 
148
-    ![windows-mingw](/project/images/path_variable.png)
148
+    ![windows-mingw](images/path_variable.png)
149 149
 
150 150
 6. Click **Edit** to edit the variable (you can also double-click it).
151 151
 
... ...
@@ -153,7 +153,7 @@ You'll need to add the compiler to your `Path` environment variable.
153 153
 
154 154
 7. Make sure the `Path` includes `C:\TDM-GCC64\bin` 
155 155
 
156
-	 ![include gcc](/project/images/include_gcc.png)
156
+	 ![include gcc](images/include_gcc.png)
157 157
 	 
158 158
 	 If you don't see `C:\TDM-GCC64\bin`, add it.
159 159
 		
... ...
@@ -206,7 +206,7 @@ from GitHub.
206 206
 	Recall that **Git Bash** came with the Git for Windows installation.  **Git
207 207
 	Bash** just as it sounds allows you to run a Bash terminal on Windows.
208 208
 	
209
-	![Git Bash](/project/images/git_bash.png)
209
+	![Git Bash](images/git_bash.png)
210 210
 
211 211
 2. Change to the root directory.
212 212
 
... ...
@@ -262,4 +262,4 @@ from GitHub.
262 262
 ## Where to go next
263 263
 
264 264
 In the next section, you'll [learn how to set up and configure Git for
265
-contributing to Docker](/project/set-up-git/).
266 265
\ No newline at end of file
266
+contributing to Docker](set-up-git.md).
267 267
\ No newline at end of file
... ...
@@ -56,7 +56,7 @@ depending on your OS.
56 56
 ### Install or upgrade Docker 
57 57
 
58 58
 If you haven't already, install the Docker software using the 
59
-<a href="/installation" target="_blank">instructions for your operating system</a>.
59
+<a href="/engine/installation" target="_blank">instructions for your operating system</a>.
60 60
 If you have an existing installation, check your version and make sure you have
61 61
 the latest Docker. 
62 62
 
... ...
@@ -95,4 +95,4 @@ You must log out and log back in for this modification to take effect.
95 95
 ## Where to go next
96 96
 
97 97
 In the next section, you'll [learn how to set up and configure Git for
98
-contributing to Docker](/project/set-up-git/).
98
+contributing to Docker](set-up-git.md).
... ...
@@ -229,7 +229,7 @@ run a Bash terminal on Windows.
229 229
 
230 230
 1.  If you don't have one open already, start a Git Bash terminal.
231 231
 
232
-	 ![Git Bash](/project/images/git_bash.png)
232
+	 ![Git Bash](images/git_bash.png)
233 233
 
234 234
 2. Change to the `docker` source directory.
235 235
 
... ...
@@ -314,7 +314,7 @@ can browse the docs.
314 314
 
315 315
 5. Once in the documentation, look for the red notice to verify you are seeing the correct build.
316 316
 
317
-    ![Beta documentation](/project/images/red_notice.png)
317
+    ![Beta documentation](images/red_notice.png)
318 318
 
319 319
 6. Navigate to your new or changed document.
320 320
 
... ...
@@ -328,4 +328,4 @@ can browse the docs.
328 328
 Congratulations, you have successfully completed the basics you need to
329 329
 understand the Docker test framework. In the next steps, you use what you have
330 330
 learned so far to [contribute to Docker by working on an
331
-issue](/project/make-a-contribution/).
331
+issue](make-a-contribution.md).
... ...
@@ -40,7 +40,7 @@ Right now we don't have a lot written about this yet, so just email
40 40
 
41 41
 ## A turtle is involved
42 42
 
43
-![Gordon](/project/images/gordon.jpeg)
43
+![Gordon](images/gordon.jpeg)
44 44
 
45 45
 Enough said.
46 46
 
... ...
@@ -60,4 +60,4 @@ Please feel free to skim past information you find obvious or boring.
60 60
 
61 61
 ## How to get started
62 62
 
63
-Start by [getting the software you need to contribute](/project/software-required/).
63
+Start by [getting the software you need to contribute](software-required.md).
... ...
@@ -137,7 +137,7 @@ After you push a new branch, you should verify it on GitHub:
137 137
 
138 138
 3. Select your branch from the dropdown.
139 139
 
140
-	![Find branch](/project/images/locate_branch.png)
140
+	![Find branch](images/locate_branch.png)
141 141
 	
142 142
 4. Use the "Compare" button to compare the differences between your branch and master.
143 143
 
... ...
@@ -197,4 +197,4 @@ You should pull and rebase frequently as you work.
197 197
 ## Where to go next
198 198
 
199 199
 At this point, you should understand how to work on an issue. In the next
200
-section, you [learn how to make a pull request](/project/create-pr/).
200
+section, you [learn how to make a pull request](create-pr.md).
... ...
@@ -11,5 +11,5 @@ weight = 99
11 11
 
12 12
 # Docker Hub API
13 13
 
14
-This API is deprecated as of 1.7. To view the old version, see the [Docker Hub API](https://docs.docker.com/v1.7/reference/api/docker-io_api/) in the 1.7 documentation. 
14
+This API is deprecated as of 1.7. To view the old version, see the [Docker Hub API](docker-io_api.md) in the 1.7 documentation. 
15 15
 
... ...
@@ -56,7 +56,7 @@ wget --no-check-certificate --certificate=$DOCKER_CERT_PATH/cert.pem --private-k
56 56
 
57 57
 The following diagram depicts the container states accessible through the API.
58 58
 
59
-![States](../images/event_state.png)
59
+![States](images/event_state.png)
60 60
 
61 61
 Some container-related events are not affected by container state, so they are not included in this diagram. These events are:
62 62
 
... ...
@@ -74,7 +74,7 @@ This section lists each version from latest to oldest.  Each listing includes a
74 74
 
75 75
 ### v1.21 API changes
76 76
 
77
-[Docker Remote API v1.21](/reference/api/docker_remote_api_v1.21/) documentation
77
+[Docker Remote API v1.21](docker_remote_api_v1.21.md) documentation
78 78
 
79 79
 * `GET /volumes` lists volumes from all volume drivers.
80 80
 * `POST /volumes` to create a volume.
... ...
@@ -95,7 +95,7 @@ list of DNS options to be used in the container.
95 95
 
96 96
 ### v1.20 API changes
97 97
 
98
-[Docker Remote API v1.20](/reference/api/docker_remote_api_v1.20/) documentation
98
+[Docker Remote API v1.20](docker_remote_api_v1.20/) documentation
99 99
 
100 100
 * `GET /containers/(id)/archive` get an archive of filesystem content from a container.
101 101
 * `PUT /containers/(id)/archive` upload an archive of content to be extracted to
... ...
@@ -107,7 +107,7 @@ list of additional groups that the container process will run as.
107 107
 
108 108
 ### v1.19 API changes
109 109
 
110
-[Docker Remote API v1.19](/reference/api/docker_remote_api_v1.19/) documentation
110
+[Docker Remote API v1.19](docker_remote_api_v1.19.md) documentation
111 111
 
112 112
 * When the daemon detects a version mismatch with the client, usually when
113 113
 the client is newer than the daemon, an HTTP 400 is now returned instead
... ...
@@ -121,7 +121,7 @@ end point now returns the new boolean fields `CpuCfsPeriod`, `CpuCfsQuota`, and
121 121
 
122 122
 ### v1.18 API changes
123 123
 
124
-[Docker Remote API v1.18](/reference/api/docker_remote_api_v1.18/) documentation
124
+[Docker Remote API v1.18](docker_remote_api_v1.18.md) documentation
125 125
 
126 126
 * `GET /version` now returns `Os`, `Arch` and `KernelVersion`.
127 127
 * `POST /containers/create` and `POST /containers/(id)/start`allow you to  set ulimit settings for use in the container.
... ...
@@ -134,7 +134,7 @@ end point now returns the new boolean fields `CpuCfsPeriod`, `CpuCfsQuota`, and
134 134
 
135 135
 ### v1.17 API changes
136 136
 
137
-[Docker Remote API v1.17](/reference/api/docker_remote_api_v1.17/) documentation
137
+[Docker Remote API v1.17](docker_remote_api_v1.17.md) documentation
138 138
 
139 139
 * The build supports `LABEL` command. Use this to add metadata to an image. For
140 140
 example you could add data describing the content of an image. `LABEL
... ...
@@ -156,7 +156,7 @@ read only.
156 156
 
157 157
 ### v1.16 API changes
158 158
 
159
-[Docker Remote API v1.16](/reference/api/docker_remote_api_v1.16/)
159
+[Docker Remote API v1.16](docker_remote_api_v1.16.md)
160 160
 
161 161
 * `GET /info` returns the number of CPUs available on the machine (`NCPU`),
162 162
 total memory available (`MemTotal`), a user-friendly name describing the running Docker daemon (`Name`), a unique ID identifying the daemon (`ID`), and
... ...
@@ -167,14 +167,14 @@ a list of daemon labels (`Labels`).
167 167
 
168 168
 ### v1.15 API changes
169 169
 
170
-[Docker Remote API v1.15](/reference/api/docker_remote_api_v1.15/) documentation
170
+[Docker Remote API v1.15](docker_remote_api_v1.15.md) documentation
171 171
 
172 172
 `POST /containers/create` you can set a container's `HostConfig` when creating a
173 173
 container. Previously this was only available when starting a container.
174 174
 
175 175
 ### v1.14 API changes
176 176
 
177
-[Docker Remote API v1.14](/reference/api/docker_remote_api_v1.14/) documentation
177
+[Docker Remote API v1.14](docker_remote_api_v1.14.md) documentation
178 178
 
179 179
 * `DELETE /containers/(id)` when using `force`, the container will be immediately killed with SIGKILL.
180 180
 * `POST /containers/(id)/start` the `hostConfig` option accepts the field `CapAdd`, which specifies a list of capabilities
... ...
@@ -506,7 +506,7 @@ Status Codes:
506 506
 
507 507
     When using the TTY setting is enabled in
508 508
     [`POST /containers/create`
509
-](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
509
+](docker_remote_api_v1.9.md#create-a-container),
510 510
     the stream is the raw data from the process PTY and client's stdin.
511 511
     When the TTY is disabled, then the stream is multiplexed to separate
512 512
     stdout and stderr.
... ...
@@ -1040,7 +1040,7 @@ Build an image from Dockerfile via stdin
1040 1040
     The archive must include a file called `Dockerfile`
1041 1041
  at its root. It may include any number of other files,
1042 1042
     which will be accessible in the build context (See the [*ADD build
1043
-    command*](/reference/builder/#add)).
1043
+    command*](../../reference/builder.md#add)).
1044 1044
 
1045 1045
 Query Parameters:
1046 1046
 
... ...
@@ -541,7 +541,7 @@ Status Codes:
541 541
 
542 542
     When using the TTY setting is enabled in
543 543
     [`POST /containers/create`
544
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
544
+    ](docker_remote_api_v1.9.md#create-a-container),
545 545
     the stream is the raw data from the process PTY and client's stdin.
546 546
     When the TTY is disabled, then the stream is multiplexed to separate
547 547
     stdout and stderr.
... ...
@@ -1046,7 +1046,7 @@ Build an image from Dockerfile via stdin
1046 1046
     The archive must include a file called `Dockerfile`
1047 1047
     at its root. It may include any number of other files,
1048 1048
     which will be accessible in the build context (See the [*ADD build
1049
-    command*](/reference/builder/#dockerbuilder)).
1049
+    command*](../../reference/builder.md#dockerbuilder)).
1050 1050
 
1051 1051
 Query Parameters:
1052 1052
 
... ...
@@ -15,8 +15,7 @@ parent = "smn_remoteapi"
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -589,7 +588,7 @@ Status Codes:
589 589
 
590 590
     When using the TTY setting is enabled in
591 591
     [`POST /containers/create`
592
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
592
+    ](docker_remote_api_v1.9.md#create-a-container),
593 593
     the stream is the raw data from the process PTY and client's stdin.
594 594
     When the TTY is disabled, then the stream is multiplexed to separate
595 595
     stdout and stderr.
... ...
@@ -1108,7 +1107,7 @@ Build an image from Dockerfile via stdin
1108 1108
     The archive must include a file called `Dockerfile`
1109 1109
     at its root. It may include any number of other files,
1110 1110
     which will be accessible in the build context (See the [*ADD build
1111
-    command*](/reference/builder/#dockerbuilder)).
1111
+    command*](../../reference/builder.md#dockerbuilder)).
1112 1112
 
1113 1113
 Query Parameters:
1114 1114
 
... ...
@@ -15,8 +15,7 @@ parent = "smn_remoteapi"
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -582,7 +581,7 @@ Status Codes:
582 582
 
583 583
     When using the TTY setting is enabled in
584 584
     [`POST /containers/create`
585
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
585
+    ](docker_remote_api_v1.9.md#create-a-container),
586 586
     the stream is the raw data from the process PTY and client's stdin.
587 587
     When the TTY is disabled, then the stream is multiplexed to separate
588 588
     stdout and stderr.
... ...
@@ -1097,7 +1096,7 @@ Build an image from Dockerfile via stdin
1097 1097
     The archive must include a file called `Dockerfile`
1098 1098
     at its root. It may include any number of other files,
1099 1099
     which will be accessible in the build context (See the [*ADD build
1100
-    command*](/reference/builder/#dockerbuilder)).
1100
+    command*](../../reference/builder.md#dockerbuilder)).
1101 1101
 
1102 1102
 Query Parameters:
1103 1103
 
... ...
@@ -15,8 +15,7 @@ weight = 7
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -591,8 +590,7 @@ Status Codes:
591 591
     **Stream details**:
592 592
 
593 593
     When using the TTY setting is enabled in
594
-    [`POST /containers/create`
595
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
594
+    [`POST /containers/create`](#create-a-container),
596 595
     the stream is the raw data from the process PTY and client's stdin.
597 596
     When the TTY is disabled, then the stream is multiplexed to separate
598 597
     stdout and stderr.
... ...
@@ -1107,7 +1105,7 @@ Build an image from Dockerfile via stdin
1107 1107
     The archive must include a file called `Dockerfile`
1108 1108
     at its root. It may include any number of other files,
1109 1109
     which will be accessible in the build context (See the [*ADD build
1110
-    command*](/reference/builder/#dockerbuilder)).
1110
+    command*](../../reference/builder.md#dockerbuilder)).
1111 1111
 
1112 1112
 Query Parameters:
1113 1113
 
... ...
@@ -15,8 +15,7 @@ weight = 6
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -740,8 +739,7 @@ Status Codes:
740 740
     **Stream details**:
741 741
 
742 742
     When using the TTY setting is enabled in
743
-    [`POST /containers/create`
744
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
743
+    [`POST /containers/create`](#create-a-container),
745 744
     the stream is the raw data from the process PTY and client's stdin.
746 745
     When the TTY is disabled, then the stream is multiplexed to separate
747 746
     stdout and stderr.
... ...
@@ -1258,7 +1256,7 @@ Build an image from Dockerfile via stdin
1258 1258
     The archive must include a file called `Dockerfile`
1259 1259
     at its root. It may include any number of other files,
1260 1260
     which will be accessible in the build context (See the [*ADD build
1261
-    command*](/reference/builder/#dockerbuilder)).
1261
+    command*](../../reference/builder.md#dockerbuilder)).
1262 1262
 
1263 1263
 Query Parameters:
1264 1264
 
... ...
@@ -15,8 +15,7 @@ weight = 5
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -688,7 +687,7 @@ Status Codes:
688 688
 
689 689
     When using the TTY setting is enabled in
690 690
     [`POST /containers/create`
691
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
691
+    ](#create-a-container),
692 692
     the stream is the raw data from the process PTY and client's stdin.
693 693
     When the TTY is disabled, then the stream is multiplexed to separate
694 694
     stdout and stderr.
... ...
@@ -1205,7 +1204,7 @@ Build an image from Dockerfile via stdin
1205 1205
     The archive must include a file called `Dockerfile`
1206 1206
     at its root. It may include any number of other files,
1207 1207
     which will be accessible in the build context (See the [*ADD build
1208
-    command*](/reference/builder/#dockerbuilder)).
1208
+    command*](../../reference/builder.md#dockerbuilder)).
1209 1209
 
1210 1210
 Query Parameters:
1211 1211
 
... ...
@@ -15,8 +15,7 @@ weight = 4
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -846,7 +845,7 @@ Status Codes:
846 846
 
847 847
     When using the TTY setting is enabled in
848 848
     [`POST /containers/create`
849
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
849
+    ](#create-a-container),
850 850
     the stream is the raw data from the process PTY and client's stdin.
851 851
     When the TTY is disabled, then the stream is multiplexed to separate
852 852
     stdout and stderr.
... ...
@@ -1079,7 +1078,7 @@ the path to the alternate build instructions file to use.
1079 1079
 
1080 1080
 The archive may include any number of other files,
1081 1081
 which will be accessible in the build context (See the [*ADD build
1082
-command*](/reference/builder/#dockerbuilder)).
1082
+command*](../../reference/builder.md#dockerbuilder)).
1083 1083
 
1084 1084
 Query Parameters:
1085 1085
 
... ...
@@ -15,8 +15,7 @@ weight = 3
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST, but for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `STDOUT`,
22 21
    `STDIN` and `STDERR`.
... ...
@@ -895,7 +894,7 @@ Status Codes:
895 895
 
896 896
     When using the TTY setting is enabled in
897 897
     [`POST /containers/create`
898
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
898
+    ](#create-a-container),
899 899
     the stream is the raw data from the process PTY and client's stdin.
900 900
     When the TTY is disabled, then the stream is multiplexed to separate
901 901
     stdout and stderr.
... ...
@@ -1168,7 +1167,7 @@ the path to the alternate build instructions file to use.
1168 1168
 
1169 1169
 The archive may include any number of other files,
1170 1170
 which will be accessible in the build context (See the [*ADD build
1171
-command*](/reference/builder/#dockerbuilder)).
1171
+command*](../../reference/builder.md#dockerbuilder)).
1172 1172
 
1173 1173
 The build will also be canceled if the client drops the connection by quitting
1174 1174
 or being killed.
... ...
@@ -15,8 +15,7 @@ weight = 2
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST. However, for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `stdout`,
22 21
    `stdin` and `stderr`.
... ...
@@ -914,7 +913,7 @@ Status Codes:
914 914
 
915 915
     When using the TTY setting is enabled in
916 916
     [`POST /containers/create`
917
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
917
+    ](#create-a-container),
918 918
     the stream is the raw data from the process PTY and client's `stdin`.
919 919
     When the TTY is disabled, then the stream is multiplexed to separate
920 920
     `stdout` and `stderr`.
... ...
@@ -1192,7 +1191,7 @@ the path to the alternate build instructions file to use.
1192 1192
 
1193 1193
 The archive may include any number of other files,
1194 1194
 which are accessible in the build context (See the [*ADD build
1195
-command*](/reference/builder/#dockerbuilder)).
1195
+command*](../../reference/builder.md#dockerbuilder)).
1196 1196
 
1197 1197
 The build is canceled if the client drops the connection by quitting
1198 1198
 or being killed.
... ...
@@ -15,8 +15,7 @@ weight = 1
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST. However, for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `stdout`,
22 21
    `stdin` and `stderr`.
... ...
@@ -925,7 +924,7 @@ Status Codes:
925 925
 
926 926
     When using the TTY setting is enabled in
927 927
     [`POST /containers/create`
928
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
928
+    ](#create-a-container),
929 929
     the stream is the raw data from the process PTY and client's `stdin`.
930 930
     When the TTY is disabled, then the stream is multiplexed to separate
931 931
     `stdout` and `stderr`.
... ...
@@ -1319,7 +1318,7 @@ the path to the alternate build instructions file to use.
1319 1319
 
1320 1320
 The archive may include any number of other files,
1321 1321
 which are accessible in the build context (See the [*ADD build
1322
-command*](/reference/builder/#dockerbuilder)).
1322
+command*](../../reference/builder.md#dockerbuilder)).
1323 1323
 
1324 1324
 The build is canceled if the client drops the connection by quitting
1325 1325
 or being killed.
... ...
@@ -15,8 +15,7 @@ weight = 0
15 15
 
16 16
  - The Remote API has replaced `rcli`.
17 17
  - The daemon listens on `unix:///var/run/docker.sock` but you can
18
-   [Bind Docker to another host/port or a Unix socket](
19
-   /articles/basics/#bind-docker-to-another-hostport-or-a-unix-socket).
18
+   [Bind Docker to another host/port or a Unix socket](../../articles/basics.md#bind-docker-to-another-hostport-or-a-unix-socket).
20 19
  - The API tends to be REST. However, for some complex commands, like `attach`
21 20
    or `pull`, the HTTP connection is hijacked to transport `stdout`,
22 21
    `stdin` and `stderr`.
... ...
@@ -962,7 +961,7 @@ Status Codes:
962 962
 
963 963
     When using the TTY setting is enabled in
964 964
     [`POST /containers/create`
965
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
965
+    ](#create-a-container),
966 966
     the stream is the raw data from the process PTY and client's `stdin`.
967 967
     When the TTY is disabled, then the stream is multiplexed to separate
968 968
     `stdout` and `stderr`.
... ...
@@ -1356,7 +1355,7 @@ the path to the alternate build instructions file to use.
1356 1356
 
1357 1357
 The archive may include any number of other files,
1358 1358
 which are accessible in the build context (See the [*ADD build
1359
-command*](/reference/builder/#dockerbuilder)).
1359
+command*](../../reference/builder.md#dockerbuilder)).
1360 1360
 
1361 1361
 The build is canceled if the client drops the connection by quitting
1362 1362
 or being killed.
... ...
@@ -1383,7 +1382,7 @@ Query Parameters:
1383 1383
         these values at build-time. Docker uses the `buildargs` as the environment
1384 1384
         context for command(s) run via the Dockerfile's `RUN` instruction or for
1385 1385
         variable expansion in other Dockerfile instructions. This is not meant for
1386
-        passing secret values. [Read more about the buildargs instruction](/reference/builder/#arg)
1386
+        passing secret values. [Read more about the buildargs instruction](../../reference/builder.md#arg)
1387 1387
 
1388 1388
     Request Headers:
1389 1389
 
... ...
@@ -531,7 +531,7 @@ Status Codes:
531 531
 
532 532
     When using the TTY setting is enabled in
533 533
     [`POST /containers/create`
534
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
534
+    ](docker_remote_api_v1.9.md#create-a-container),
535 535
     the stream is the raw data from the process PTY and client's stdin.
536 536
     When the TTY is disabled, then the stream is multiplexed to separate
537 537
     stdout and stderr.
... ...
@@ -476,7 +476,7 @@ Status Codes:
476 476
 
477 477
     When using the TTY setting is enabled in
478 478
     [`POST /containers/create`
479
-    ](/reference/api/docker_remote_api_v1.7/#create-a-container),
479
+    ](docker_remote_api_v1.7.md#create-a-container),
480 480
     the stream is the raw data from the process PTY and client's stdin.
481 481
     When the TTY is disabled, then the stream is multiplexed to separate
482 482
     stdout and stderr.
... ...
@@ -992,7 +992,7 @@ Build an image from Dockerfile via stdin
992 992
     The archive must include a file called `Dockerfile`
993 993
     at its root. It may include any number of other files,
994 994
     which will be accessible in the build context (See the [*ADD build
995
-    command*](/builder/#dockerbuilder)).
995
+    command*](../../reference/builder.md#dockerbuilder)).
996 996
 
997 997
 Query Parameters:
998 998
 
... ...
@@ -524,7 +524,7 @@ Status Codes:
524 524
 
525 525
     When using the TTY setting is enabled in
526 526
     [`POST /containers/create`
527
-    ](/reference/api/docker_remote_api_v1.9/#create-a-container "POST /containers/create"),
527
+    ](docker_remote_api_v1.9.md#create-a-container),
528 528
     the stream is the raw data from the process PTY and client's stdin.
529 529
     When the TTY is disabled, then the stream is multiplexed to separate
530 530
     stdout and stderr.
... ...
@@ -1042,7 +1042,7 @@ Build an image from Dockerfile via stdin
1042 1042
     The archive must include a file called `Dockerfile`
1043 1043
     at its root. It may include any number of other files,
1044 1044
     which will be accessible in the build context (See the [*ADD build
1045
-    command*](/reference/builder/#dockerbuilder)).
1045
+    command*](../../reference/builder.md#dockerbuilder)).
1046 1046
 
1047 1047
 Query Parameters:
1048 1048
 
... ...
@@ -1045,7 +1045,7 @@ Build an image from Dockerfile using a POST body.
1045 1045
     The archive must include a file called `Dockerfile`
1046 1046
  at its root. It may include any number of other files,
1047 1047
     which will be accessible in the build context (See the [*ADD build
1048
-    command*](/reference/builder/#add)).
1048
+    command*](../../reference/builder.md#add)).
1049 1049
 
1050 1050
 Query Parameters:
1051 1051
 
... ...
@@ -11,7 +11,7 @@ parent="smn_hub_ref"
11 11
 # The Docker Hub and the Registry v1
12 12
 
13 13
 This API is deprecated as of 1.7. To view the old version, see the [go
14
-here](http://docs.docker.com/v1.7/reference/api/hub_registry_spec/) in
14
+here](hub_registry_spec.md) in
15 15
 the 1.7 documentation. If you want an overview of the current features in
16 16
 Docker Hub or other image management features see the [image management
17
-overview](/userguide/image_management/) in the current documentation set.
18 17
\ No newline at end of file
18
+overview](../../userguide/image_management.md) in the current documentation set.
19 19
\ No newline at end of file
... ...
@@ -18,11 +18,11 @@ instructions in succession.
18 18
 
19 19
 This page describes the commands you can use in a `Dockerfile`. When you are
20 20
 done reading this page, refer to the [`Dockerfile` Best
21
-Practices](/articles/dockerfile_best-practices) for a tip-oriented guide.
21
+Practices](../articles/dockerfile_best-practices.md) for a tip-oriented guide.
22 22
 
23 23
 ## Usage
24 24
 
25
-The [`docker build`](/reference/commandline/build/) command builds an image from
25
+The [`docker build`](commandline/build.md) command builds an image from
26 26
 a `Dockerfile` and a *context*. The build's context is the files at a specified
27 27
 location `PATH` or `URL`. The `PATH` is a directory on your local filesystem.
28 28
 The `URL` is a the location of a Git repository.
... ...
@@ -75,7 +75,7 @@ instructions.
75 75
 Whenever possible, Docker will re-use the intermediate images (cache),
76 76
 to accelerate the `docker build` process significantly. This is indicated by
77 77
 the `Using cache` message in the console output.
78
-(For more information, see the [Build cache section](/articles/dockerfile_best-practices/#build-cache)) in the
78
+(For more information, see the [Build cache section](../articles/dockerfile_best-practices.md#build-cache)) in the
79 79
 `Dockerfile` best practices guide:
80 80
 
81 81
     $ docker build -t SvenDowideit/ambassador .
... ...
@@ -92,7 +92,7 @@ the `Using cache` message in the console output.
92 92
     Successfully built 1a5ffc17324d
93 93
 
94 94
 When you're done with your build, you're ready to look into [*Pushing a
95
-repository to its registry*]( /userguide/dockerrepos/#contributing-to-docker-hub).
95
+repository to its registry*](../userguide/dockerrepos.md#contributing-to-docker-hub).
96 96
 
97 97
 ## Format
98 98
 
... ...
@@ -106,7 +106,7 @@ be UPPERCASE in order to distinguish them from arguments more easily.
106 106
 
107 107
 Docker runs the instructions in a `Dockerfile` in order. **The
108 108
 first instruction must be \`FROM\`** in order to specify the [*Base
109
-Image*](/reference/glossary/#base-image) from which you are building.
109
+Image*](glossary.md#base-image) from which you are building.
110 110
 
111 111
 Docker will treat lines that *begin* with `#` as a
112 112
 comment. A `#` marker anywhere else in the line will
... ...
@@ -283,11 +283,10 @@ Or
283 283
 
284 284
     FROM <image>@<digest>
285 285
 
286
-The `FROM` instruction sets the [*Base Image*](/reference/glossary/#base-image)
286
+The `FROM` instruction sets the [*Base Image*](glossary.md#base-image)
287 287
 for subsequent instructions. As such, a valid `Dockerfile` must have `FROM` as
288 288
 its first instruction. The image can be any valid image – it is especially easy
289
-to start by **pulling an image** from the [*Public Repositories*](
290
-/userguide/dockerrepos).
289
+to start by **pulling an image** from the [*Public Repositories*](../userguide/dockerrepos.md).
291 290
 
292 291
 - `FROM` must be the first non-comment instruction in the `Dockerfile`.
293 292
 
... ...
@@ -358,7 +357,7 @@ cache for `RUN` instructions can be invalidated by using the `--no-cache`
358 358
 flag, for example `docker build --no-cache`.
359 359
 
360 360
 See the [`Dockerfile` Best Practices
361
-guide](/articles/dockerfile_best-practices/#build-cache) for more information.
361
+guide](../articles/dockerfile_best-practices.md#build-cache) for more information.
362 362
 
363 363
 The cache for `RUN` instructions can be invalidated by `ADD` instructions. See
364 364
 [below](#add) for details.
... ...
@@ -488,14 +487,14 @@ To view an image's labels, use the `docker inspect` command.
488 488
 The `EXPOSE` instructions informs Docker that the container will listen on the
489 489
 specified network ports at runtime. Docker uses this information to interconnect
490 490
 containers using links (see the [Docker User
491
-Guide](/userguide/dockerlinks)) and to determine which ports to expose to the
492
-host when [using the -P flag](/reference/run/#expose-incoming-ports).
491
+Guide](../userguide/dockerlinks.md) and to determine which ports to expose to the
492
+host when [using the -P flag](run.md#expose-incoming-ports).
493 493
 
494 494
 > **Note**:
495 495
 > `EXPOSE` doesn't define which ports can be exposed to the host or make ports
496 496
 > accessible from the host by default. To expose ports to the host, at runtime,
497
-> [use the `-p` flag](/userguide/dockerlinks) or
498
-> [the -P flag](/reference/run/#expose-incoming-ports).
497
+> [use the `-p` flag](../userguide/dockerlinks.md) or
498
+> [the -P flag](run.md#expose-incoming-ports).
499 499
 
500 500
 ## ENV
501 501
 
... ...
@@ -595,7 +594,7 @@ of whether or not the file has changed and the cache should be updated.
595 595
 > following instructions from the Dockerfile if the contents of `<src>` have
596 596
 > changed. This includes invalidating the cache for `RUN` instructions.
597 597
 > See the [`Dockerfile` Best Practices
598
-guide](/articles/dockerfile_best-practices/#build-cache) for more information.
598
+guide](../articles/dockerfile_best-practices.md#build-cache) for more information.
599 599
 
600 600
 
601 601
 `ADD` obeys the following rules:
... ...
@@ -938,7 +937,7 @@ containers. The value can be a JSON array, `VOLUME ["/var/log/"]`, or a plain
938 938
 string with multiple arguments, such as `VOLUME /var/log` or `VOLUME /var/log
939 939
 /var/db`. For more information/examples and mounting instructions via the
940 940
 Docker client, refer to 
941
-[*Share Directories via Volumes*](/userguide/dockervolumes/#mount-a-host-directory-as-a-data-volume)
941
+[*Share Directories via Volumes*](../userguide/dockervolumes.md#mount-a-host-directory-as-a-data-volume)
942 942
 documentation.
943 943
 
944 944
 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.
1191 1191
 ## Dockerfile examples
1192 1192
 
1193 1193
 Below you can see some examples of Dockerfile syntax. If you're interested in
1194
-something more realistic, take a look at the list of [Dockerization examples](/examples/).
1194
+something more realistic, take a look at the list of [Dockerization examples](../examples/).
1195 1195
 
1196 1196
 ```
1197 1197
 # Nginx
... ...
@@ -37,7 +37,7 @@ parent = "smn_cli"
37 37
 Builds Docker images from a Dockerfile and a "context". A build's context is
38 38
 the files located in the specified `PATH` or `URL`. The build process can refer
39 39
 to any of the files in the context. For example, your build can use an
40
-[*ADD*](/reference/builder/#add) instruction to reference a file in the
40
+[*ADD*](../builder.md#add) instruction to reference a file in the
41 41
 context.
42 42
 
43 43
 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,
93 93
 add to that directory only the files needed for building the Dockerfile. To
94 94
 increase the build's performance, you can exclude files and directories by
95 95
 adding a `.dockerignore` file to that directory as well. For information on
96
-creating one, see the [.dockerignore file](/reference/builder#dockerignore-file).
96
+creating one, see the [.dockerignore file](../builder.md#dockerignore-file).
97 97
 
98 98
 If the Docker client loses connection to the daemon, the build is canceled.
99 99
 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
124 124
 
125 125
 See also:
126 126
 
127
-[*Dockerfile Reference*](/reference/builder).
127
+[*Dockerfile Reference*](../builder.md).
128 128
 
129 129
 ## Examples
130 130
 
... ...
@@ -160,7 +160,7 @@ where to find the files for the "context" of the build on the Docker daemon.
160 160
 Remember that the daemon could be running on a remote machine and that no
161 161
 parsing of the Dockerfile happens at the client side (where you're running
162 162
 `docker build`). That means that *all* the files at `PATH` get sent, not just
163
-the ones listed to [*ADD*](/reference/builder/#add) in the Dockerfile.
163
+the ones listed to [*ADD*](../builder.md#add) in the Dockerfile.
164 164
 
165 165
 The transfer of context from the local machine to the Docker daemon is what the
166 166
 `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.
191 191
 This example shows the use of the `.dockerignore` file to exclude the `.git`
192 192
 directory from the context. Its effect can be seen in the changed size of the
193 193
 uploaded context. The builder reference contains detailed information on
194
-[creating a .dockerignore file](../../builder/#dockerignore-file)
194
+[creating a .dockerignore file](../builder.md#dockerignore-file)
195 195
 
196 196
     $ docker build -t vieux/apache:2.0 .
197 197
 
... ...
@@ -250,11 +250,11 @@ the command line.
250 250
 
251 251
 When `docker build` is run with the `--cgroup-parent` option the containers
252 252
 used in the build will be run with the [corresponding `docker run`
253
-flag](/reference/run/#specifying-custom-cgroups).
253
+flag](../run.md#specifying-custom-cgroups).
254 254
 
255 255
 Using the `--ulimit` option with `docker build` will cause each build step's
256 256
 container to be started using those [`--ulimit`
257
-flag values](/reference/run/#setting-ulimits-in-a-container).
257
+flag values](../run.md#setting-ulimits-in-a-container).
258 258
 
259 259
 You can use `ENV` instructions in a Dockerfile to define variable
260 260
 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
273 273
 like `ENV` values do.
274 274
 
275 275
 For detailed information on using `ARG` and `ENV` instructions, see the
276
-[Dockerfile reference](/reference/builder).
276
+[Dockerfile reference](../builder.md).
... ...
@@ -31,7 +31,7 @@ each `docker` command with `sudo`. To avoid having to use `sudo` with the
31 31
 `docker` and add users to it.
32 32
 
33 33
 For more information about installing Docker or `sudo` configuration, refer to
34
-the [installation](/installation) instructions for your operating system.
34
+the [installation](../../installation) instructions for your operating system.
35 35
 
36 36
 ## Environment variables
37 37
 
... ...
@@ -98,7 +98,7 @@ The property `psFormat` specifies the default format for `docker ps` output.
98 98
 When the `--format` flag is not provided with the `docker ps` command,
99 99
 Docker's client uses this property. If this property is not set, the client
100 100
 falls back to the default table format. For a list of supported formatting
101
-directives, see the [**Formatting** section in the `docker ps` documentation](../ps)
101
+directives, see the [**Formatting** section in the `docker ps` documentation](ps.md)
102 102
 
103 103
 Following is a sample `config.json` file:
104 104
 
... ...
@@ -83,8 +83,7 @@ This is useful when you want to set up a container configuration ahead of time
83 83
 so that it is ready to start when you need it. The initial status of the
84 84
 new container is `created`.
85 85
 
86
-Please see the [run command](/reference/commandline/run) section and the [Docker run reference](
87
-/reference/run/) for more details.
86
+Please see the [run command](run.md) section and the [Docker run reference](run.md) for more details.
88 87
 
89 88
 ## Examples
90 89
 
... ...
@@ -73,7 +73,7 @@ To run the daemon with debug output, use `docker daemon -D`.
73 73
 
74 74
 ## Daemon socket option
75 75
 
76
-The Docker daemon can listen for [Docker Remote API](/reference/api/docker_remote_api/)
76
+The Docker daemon can listen for [Docker Remote API](../api/docker_remote_api.md)
77 77
 requests via three different types of Socket: `unix`, `tcp`, and `fd`.
78 78
 
79 79
 By default, a `unix` domain socket (or IPC socket) is created at
... ...
@@ -83,7 +83,7 @@ membership.
83 83
 If you need to access the Docker daemon remotely, you need to enable the `tcp`
84 84
 Socket. Beware that the default setup provides un-encrypted and
85 85
 un-authenticated direct access to the Docker daemon - and should be secured
86
-either using the [built in HTTPS encrypted socket](/articles/https/), or by
86
+either using the [built in HTTPS encrypted socket](../../articles/https/), or by
87 87
 putting a secure web proxy in front of it. You can listen on port `2375` on all
88 88
 network interfaces with `-H tcp://0.0.0.0:2375`, or on a particular network
89 89
 interface using its IP address: `-H tcp://192.168.59.103:2375`. It is
... ...
@@ -23,7 +23,7 @@ the container, `docker export` will export the contents of the *underlying*
23 23
 directory, not the contents of the volume.
24 24
 
25 25
 Refer to [Backup, restore, or migrate data
26
-volumes](/userguide/dockervolumes/#backup-restore-or-migrate-data-volumes) in
26
+volumes](../../userguide/dockervolumes.md#backup-restore-or-migrate-data-volumes) in
27 27
 the user guide for examples on exporting data in a volume.
28 28
 
29 29
 ## Examples
... ...
@@ -12,74 +12,74 @@ parent = "mn_reference"
12 12
 
13 13
 # The Docker commands
14 14
 
15
-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).  
15
+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).  
16 16
 
17
-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.
17
+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.
18 18
 
19 19
 ### Docker management commands
20 20
 
21
-* [daemon](daemon)
22
-* [info](info)
23
-* [inspect](inspect)
24
-* [version](version)
21
+* [daemon](daemon.md)
22
+* [info](info.md)
23
+* [inspect](inspect.md)
24
+* [version](version.md)
25 25
 
26 26
 ### Image commands
27 27
 
28
-* [build](build)
29
-* [commit](commit)
30
-* [export](export)
31
-* [history](history)
32
-* [images](images)
33
-* [import](import)
34
-* [load](load)
35
-* [rmi](rmi)
36
-* [save](save)
37
-* [tag](tag)
28
+* [build](build.md)
29
+* [commit](commit.md)
30
+* [export](export.md)
31
+* [history](history.md)
32
+* [images](images.md)
33
+* [import](import.md)
34
+* [load](load.md)
35
+* [rmi](rmi.md)
36
+* [save](save.md)
37
+* [tag](tag.md)
38 38
 
39 39
 ### Container commands
40 40
 
41
-* [attach](attach)
42
-* [cp](cp)
43
-* [create](create)
44
-* [diff](diff)
45
-* [events](events)
46
-* [exec](exec)
47
-* [kill](kill)
48
-* [logs](logs)
49
-* [pause](pause)
50
-* [port](port)
51
-* [ps](ps)
52
-* [rename](rename)
53
-* [restart](restart)
54
-* [rm](rm)
55
-* [run](run)
56
-* [start](start)
57
-* [stats](stats)
58
-* [stop](stop)
59
-* [top](top)
60
-* [unpause](unpause)
61
-* [wait](wait)
41
+* [attach](attach.md)
42
+* [cp](cp.md)
43
+* [create](create.md)
44
+* [diff](diff.md)
45
+* [events](events.md)
46
+* [exec](exec.md)
47
+* [kill](kill.md)
48
+* [logs](logs.md)
49
+* [pause](pause.md)
50
+* [port](port.md)
51
+* [ps](ps.md)
52
+* [rename](rename.md)
53
+* [restart](restart.md)
54
+* [rm](rm.md)
55
+* [run](run.md)
56
+* [start](start.md)
57
+* [stats](stats.md)
58
+* [stop](stop.md)
59
+* [top](top.md)
60
+* [unpause](unpause.md)
61
+* [wait](wait.md)
62 62
 
63 63
 ### Hub and registry commands
64 64
 
65
-* [login](login)
66
-* [logout](logout)
67
-* [pull](pull)
68
-* [push](push)
69
-* [search](search)
65
+* [login](login.md)
66
+* [logout](logout.md)
67
+* [pull](pull.md)
68
+* [push](push.md)
69
+* [search](search.md)
70 70
 
71 71
 ### Network and connectivity commands
72 72
 
73
-* [network_connect](network_connect)
74
-* [network_create](network_create)
75
-* [network_disconnect](network_disconnect)
76
-* [network_inspect](network_inspect)
77
-* [network_ls](network_ls)
78
-* [network_rm](network_rm)
73
+* [network_connect](network_connect.md)
74
+* [network_create](network_create.md)
75
+* [network_disconnect](network_disconnect.md)
76
+* [network_inspect](network_inspect.md)
77
+* [network_ls](network_ls.md)
78
+* [network_rm](network_rm.md)
79 79
 
80 80
 ### Shared data volume commands
81 81
 
82
-* [volume_create](volume_create)
83
-* [volume_inspect](volume_inspect)
84
-* [volume_ls](volume_ls)
85
-* [volume_rm](volume_rm)
82
+* [volume_create](volume_create.md)
83
+* [volume_inspect](volume_inspect.md)
84
+* [volume_ls](volume_ls.md)
85
+* [volume_rm](volume_rm.md)
... ...
@@ -81,13 +81,12 @@ specified image, and then `starts` it using the specified command. That is,
81 81
 previous changes intact using `docker start`. See `docker ps -a` to view a list
82 82
 of all containers.
83 83
 
84
-There is detailed information about `docker run` in the [Docker run reference](
85
-/reference/run/).
84
+There is detailed information about `docker run` in the [Docker run reference](run.md).
86 85
 
87 86
 The `docker run` command can be used in combination with `docker commit` to
88
-[*change the command that a container runs*](/reference/commandline/commit).
87
+[*change the command that a container runs*](commit.md).
89 88
 
90
-See the [Docker User Guide](/userguide/dockerlinks/) for more detailed
89
+See the [Docker User Guide](../../userguide/dockerlinks.md) for more detailed
91 90
 information about the `--expose`, `-p`, `-P` and `--link` parameters,
92 91
 and linking containers.
93 92
 
... ...
@@ -170,14 +169,14 @@ manipulate the host's Docker daemon.
170 170
     $ docker run -p 127.0.0.1:80:8080 ubuntu bash
171 171
 
172 172
 This binds port `8080` of the container to port `80` on `127.0.0.1` of
173
-the host machine. The [Docker User Guide](/userguide/dockerlinks/)
173
+the host machine. The [Docker User Guide](../../userguide/dockerlinks.md)
174 174
 explains in detail how to manipulate ports in Docker.
175 175
 
176 176
     $ docker run --expose 80 ubuntu bash
177 177
 
178 178
 This exposes port `80` of the container for use within a link without
179 179
 publishing the port to the host system's interfaces. The [Docker User
180
-Guide](/userguide/dockerlinks) explains in detail how to manipulate
180
+Guide](../../userguide/dockerlinks.md) explains in detail how to manipulate
181 181
 ports in Docker.
182 182
 
183 183
     $ docker run -e MYVAR1 --env MYVAR2=foo --env-file ./env.list ubuntu bash
... ...
@@ -279,7 +278,7 @@ format:
279 279
 You can load multiple label-files by supplying multiple  `--label-file` flags.
280 280
 
281 281
 For additional information on working with labels, see [*Labels - custom
282
-metadata in Docker*](/userguide/labels-custom-metadata/) in the Docker User
282
+metadata in Docker*](../../userguide/labels-custom-metadata.md) in the Docker User
283 283
 Guide.
284 284
 
285 285
     $ 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**
466 466
 so that if the container exits, Docker will restart it.
467 467
 
468 468
 More detailed information on restart policies can be found in the
469
-[Restart Policies (--restart)](/reference/run/#restart-policies-restart)
469
+[Restart Policies (--restart)](../run.md#restart-policies-restart)
470 470
 section of the Docker run reference page.
471 471
 
472 472
 ## Adding entries to a container hosts file
... ...
@@ -21,7 +21,7 @@ parent = "smn_cli"
21 21
 
22 22
 Search [Docker Hub](https://hub.docker.com) for images
23 23
 
24
-See [*Find Public Images on Docker Hub*](/userguide/dockerrepos/#searching-for-images) for
24
+See [*Find Public Images on Docker Hub*](../../userguide/dockerrepos.md#searching-for-images) for
25 25
 more details on finding shared images from the command line.
26 26
 
27 27
 > **Note:**
... ...
@@ -18,4 +18,4 @@ parent = "smn_cli"
18 18
       --help=false         Print usage
19 19
 
20 20
 You can group your images together using names and tags, and then upload them
21
-to [*Share Images via Repositories*](/userguide/dockerrepos/#contributing-to-docker-hub).
21
+to [*Share Images via Repositories*](../../userguide/dockerrepos.md#contributing-to-docker-hub).
... ...
@@ -1,6 +1,6 @@
1 1
 <!--[metadata]>
2 2
 +++
3
-title = "ps"
3
+title = "volume rm"
4 4
 description = "the volume rm command description and usage"
5 5
 keywords = ["volume, rm"]
6 6
 [menu.main]
... ...
@@ -69,7 +69,7 @@ By default, the logging driver connects to `localhost:24224`. Supply the
69 69
 ### tag
70 70
 
71 71
 By default, Docker uses the first 12 characters of the container ID to tag log messages.
72
-Refer to the [log tag option documentation](/reference/logging/log_tags/) for customizing
72
+Refer to the [log tag option documentation](log_tags.md) for customizing
73 73
 the log tag format.
74 74
 
75 75
 
... ...
@@ -13,8 +13,8 @@ weight=8
13 13
 
14 14
 # Logging Drivers
15 15
 
16
-* [Configuring logging drivers](overview)
17
-* [Configuring log tags](log_tags)
18
-* [Fluentd logging driver](fluentd)
19
-* [Journald logging driver](journald)
20
-* [Amazon CloudWatch Logs logging driver](awslogs)
16
+* [Configuring logging drivers](overview.md)
17
+* [Configuring log tags](log_tags.md)
18
+* [Fluentd logging driver](fluentd.md)
19
+* [Journald logging driver](journald.md)
20
+* [Amazon CloudWatch Logs logging driver](awslogs.md)
... ...
@@ -84,14 +84,14 @@ the following named facilities:
84 84
 * `local7`
85 85
 
86 86
 By default, Docker uses the first 12 characters of the container ID to tag log messages.
87
-Refer to the [log tag option documentation](/reference/logging/log_tags/) for customizing
87
+Refer to the [log tag option documentation](log_tags.md) for customizing
88 88
 the log tag format.
89 89
 
90 90
 
91 91
 ## journald options
92 92
 
93 93
 The `journald` logging driver stores the container id in the journal's `CONTAINER_ID` field. For detailed information on
94
-working with this logging driver, see [the journald logging driver](/reference/logging/journald/)
94
+working with this logging driver, see [the journald logging driver](journald.md)
95 95
 reference documentation.
96 96
 
97 97
 ## gelf options
... ...
@@ -109,7 +109,7 @@ driver to a GELF remote server at `192.168.0.42` on port `12201`
109 109
     $ docker run --log-driver=gelf --log-opt gelf-address=udp://192.168.0.42:12201
110 110
 
111 111
 By default, Docker uses the first 12 characters of the container ID to tag log messages.
112
-Refer to the [log tag option documentation](/reference/logging/log_tags/) for customizing
112
+Refer to the [log tag option documentation](log_tags.md) for customizing
113 113
 the log tag format.
114 114
 
115 115
 
... ...
@@ -126,7 +126,7 @@ For example, to specify both additional options:
126 126
 
127 127
 If container cannot connect to the Fluentd daemon on the specified address,
128 128
 the container stops immediately. For detailed information on working with this
129
-logging driver, see [the fluentd logging driver](/reference/logging/fluentd/)
129
+logging driver, see [the fluentd logging driver](fluentd.md)
130 130
 
131 131
 ## Specify Amazon CloudWatch Logs options
132 132
 
... ...
@@ -137,5 +137,4 @@ The Amazon CloudWatch Logs logging driver supports the following options:
137 137
     --log-opt awslogs-stream=<log_stream_name>
138 138
 
139 139
 
140
-For detailed information on working with this logging driver, see [the awslogs logging driver](/reference/logging/awslogs/)
141
-reference documentation.
140
+For detailed information on working with this logging driver, see [the awslogs logging driver](awslogs.md) reference documentation.
... ...
@@ -31,7 +31,7 @@ The basic `docker run` command takes this form:
31 31
 
32 32
     $ docker run [OPTIONS] IMAGE[:TAG|@DIGEST] [COMMAND] [ARG...]
33 33
 
34
-The `docker run` command must specify an [*IMAGE*](/reference/glossary/#image)
34
+The `docker run` command must specify an [*IMAGE*](glossary.md#image)
35 35
 to derive the container from. An image developer can define image
36 36
 defaults related to:
37 37
 
... ...
@@ -45,11 +45,11 @@ With the `docker run [OPTIONS]` an operator can add to or override the
45 45
 image defaults set by a developer. And, additionally, operators can
46 46
 override nearly all the defaults set by the Docker runtime itself. The
47 47
 operator's ability to override image and Docker runtime defaults is why
48
-[*run*](/reference/commandline/cli/run/) has more options than any
48
+[*run*](commandline/run.md) has more options than any
49 49
 other `docker` command.
50 50
 
51 51
 To learn how to interpret the types of `[OPTIONS]`, see [*Option
52
-types*](/reference/commandline/cli/#option-types).
52
+types*](commandline/cli.md#option-types).
53 53
 
54 54
 > **Note**: Depending on your Docker system configuration, you may be
55 55
 > required to preface the `docker run` command with `sudo`. To avoid
... ...
@@ -110,7 +110,7 @@ volumes. These are required because the container is no longer listening to the
110 110
 command line where `docker run` was run.
111 111
 
112 112
 To reattach to a detached container, use `docker`
113
-[*attach*](/reference/commandline/attach) command.
113
+[*attach*](commandline/attach.md) command.
114 114
 
115 115
 ### Foreground
116 116
 
... ...
@@ -159,7 +159,7 @@ The UUID identifiers come from the Docker daemon, and if you do not
159 159
 assign a name to the container with `--name` then the daemon will also
160 160
 generate a random string name too. The name can become a handy way to
161 161
 add meaning to a container since you can use this name when defining
162
-[*links*](/userguide/dockerlinks) (or any
162
+[*links*](../userguide/dockerlinks.md) (or any
163 163
 other place you need to identify a container). This works for both
164 164
 background and foreground Docker containers.
165 165
 
... ...
@@ -404,8 +404,8 @@ Using the `--restart` flag on Docker run you can specify a restart policy for
404 404
 how a container should or should not be restarted on exit.
405 405
 
406 406
 When a restart policy is active on a container, it will be shown as either `Up`
407
-or `Restarting` in [`docker ps`](/reference/commandline/ps). It can also be
408
-useful to use [`docker events`](/reference/commandline/events) to see the
407
+or `Restarting` in [`docker ps`](commandline/ps.md). It can also be
408
+useful to use [`docker events`](commandline/events.md) to see the
409 409
 restart policy in effect.
410 410
 
411 411
 Docker supports the following restart policies:
... ...
@@ -469,8 +469,7 @@ for at least 10 seconds), the delay is reset to its default value of 100 ms.
469 469
 You can specify the maximum amount of times Docker will try to restart the
470 470
 container when using the **on-failure** policy.  The default is that Docker
471 471
 will try forever to restart the container. The number of (attempted) restarts
472
-for a container can be obtained via [`docker inspect`](
473
-/reference/commandline/inspect). For example, to get the number of restarts
472
+for a container can be obtained via [`docker inspect`](commandline/inspect.md). For example, to get the number of restarts
474 473
 for container "my-container";
475 474
 
476 475
     $ docker inspect -f "{{ .RestartCount }}" my-container
... ...
@@ -1076,12 +1075,12 @@ container's logging driver. The following options are supported:
1076 1076
 
1077 1077
 The `docker logs` command is available only for the `json-file` and `journald`
1078 1078
 logging drivers.  For detailed information on working with logging drivers, see
1079
-[Configure a logging driver](/reference/logging/overview/).
1079
+[Configure a logging driver](logging/overview.md).
1080 1080
 
1081 1081
 
1082 1082
 ## Overriding Dockerfile image defaults
1083 1083
 
1084
-When a developer builds an image from a [*Dockerfile*](/reference/builder)
1084
+When a developer builds an image from a [*Dockerfile*](builder.md)
1085 1085
 or when she commits it, the developer can set a number of default parameters
1086 1086
 that take effect when the image starts up as a container.
1087 1087
 
... ...
@@ -1192,7 +1191,7 @@ then the client container can access the exposed port via a private
1192 1192
 networking interface. Docker will set some environment variables in the
1193 1193
 client container to help indicate which interface and port to use. For
1194 1194
 more information on linking, see [the guide on linking container
1195
-together](/userguide/dockerlinks/)
1195
+together](../userguide/dockerlinks.md)
1196 1196
 
1197 1197
 ### ENV (environment variables)
1198 1198
 
... ...
@@ -1230,7 +1229,7 @@ variables automatically:
1230 1230
 
1231 1231
 The container may also include environment variables defined
1232 1232
 as a result of the container being linked with another container. See
1233
-the [*Container Links*](/userguide/dockerlinks/#connect-with-the-linking-system)
1233
+the [*Container Links*](../userguide/dockerlinks.md#connect-with-the-linking-system)
1234 1234
 section for more details.
1235 1235
 
1236 1236
 Additionally, the operator can **set any environment variable** in the
... ...
@@ -1317,11 +1316,11 @@ container's `/etc/hosts` entry will be automatically updated.
1317 1317
     --volumes-from="": Mount all volumes from the given container(s)
1318 1318
 
1319 1319
 > **Note**:
1320
-> The auto-creation of the host path has been [*deprecated*](/misc/deprecated/#auto-creating-missing-host-paths-for-bind-mounts).
1320
+> The auto-creation of the host path has been [*deprecated*](../misc/deprecated.md#auto-creating-missing-host-paths-for-bind-mounts).
1321 1321
 
1322 1322
 The volumes commands are complex enough to have their own documentation
1323 1323
 in section [*Managing data in
1324
-containers*](/userguide/dockervolumes). A developer can define
1324
+containers*](../userguide/dockervolumes.md). A developer can define
1325 1325
 one or more `VOLUME`'s associated with an image, but only the operator
1326 1326
 can give access from one container to another (or from a container to a
1327 1327
 volume mounted on the host).
... ...
@@ -61,7 +61,7 @@ tag could be unsigned while the `3.1.6` tag could be signed. It is the
61 61
 responsibility of the image publisher to decide if an image tag is signed or
62 62
 not. In this representation, some image tags are signed, others are not:
63 63
 
64
-![Signed tags](../images/tag_signing.png)
64
+![Signed tags](images/tag_signing.png)
65 65
 
66 66
 Publishers can choose to sign a specific tag or not. As a result, the content of
67 67
 an unsigned tag and that of a signed tag with the same name may not match. For
... ...
@@ -77,7 +77,7 @@ with trusted images. Enabling content trust is like wearing a pair of
77 77
 rose-colored glasses. Consumers "see" only signed images tags and the less
78 78
 desirable, unsigned image tags are "invisible" to them.
79 79
 
80
-![Trust view](../images/trust_view.png)
80
+![Trust view](images/trust_view.png)
81 81
 
82 82
 To the consumer who does not enabled content trust, nothing about how they
83 83
 work with Docker images changes. Every image is visible regardless of whether it
... ...
@@ -121,7 +121,7 @@ service that isn't directly exposed to the internet and are encrypted at rest.
121 121
 
122 122
 The following image depicts the various signing keys and their relationships:
123 123
 
124
-![Content trust components](../images/trust_components.png)
124
+![Content trust components](images/trust_components.png)
125 125
 
126 126
 >**WARNING**: Loss of the root key is **very difficult** to recover from.
127 127
 >Correcting this loss requires intervention from [Docker
... ...
@@ -131,8 +131,8 @@ The following image depicts the various signing keys and their relationships:
131 131
 
132 132
 You should backup the root key somewhere safe. Given that it is only required
133 133
 to create new repositories, it is a good idea to store it offline. Make sure you
134
-read [Manage keys for content trust](/security/trust/trust_key_mng) information
135
-for details on securing, and backing up your keys.
134
+read [Manage keys for content trust](trust_key_mng.md) information
135
+for details on securing, and backing up your keys. 
136 136
 
137 137
 ## Survey of typical content trust operations
138 138
 
... ...
@@ -297,6 +297,6 @@ $  docker push --disable-content-trust docker/trusttest:untrusted
297 297
 
298 298
 ## Related information
299 299
 
300
-* [Manage keys for content trust](/security/trust/trust_key_mng)
301
-* [Automation with content trust](/security/trust/trust_automation)
302
-* [Play in a content trust sandbox](/security/trust/trust_sandbox)
300
+* [Manage keys for content trust](trust_key_mng.md)
301
+* [Automation with content trust](trust_automation.md)
302
+* [Play in a content trust sandbox](trust_sandbox.md)
... ...
@@ -14,8 +14,8 @@ weight=4
14 14
 
15 15
 The following topics are available:
16 16
 
17
-* [Content trust in Docker](/security/trust/content_trust) 
18
-* [Manage keys for content trust](/security/trust/trust_key_mng)
19
-* [Automation with content trust](/security/trust/trust_automation)
20
-* [Play in a content trust sandbox](/security/trust/trust_sandbox)
17
+* [Content trust in Docker](content_trust.md) 
18
+* [Manage keys for content trust](trust_key_mng.md)
19
+* [Automation with content trust](trust_automation.md)
20
+* [Play in a content trust sandbox](trust_sandbox.md)
21 21
 
... ...
@@ -73,7 +73,7 @@ unable to process Dockerfile: No trust data for notrust
73 73
 
74 74
 ## Related information
75 75
 
76
-* [Content trust in Docker](/security/trust/content_trust)
77
-* [Manage keys for content trust](/security/trust/trust_key_mng)
78
-* [Play in a content trust sandbox](/security/trust/trust_sandbox)
76
+* [Content trust in Docker](content_trust.md) 
77
+* [Manage keys for content trust](trust_key_mng.md)
78
+* [Play in a content trust sandbox](trust_sandbox.md)
79 79
 
... ...
@@ -68,6 +68,6 @@ the new key.
68 68
 
69 69
 ## Related information
70 70
 
71
-* [Content trust in Docker](/security/trust/content_trust)
72
-* [Automation with content trust](/security/trust/trust_automation)
73
-* [Play in a content trust sandbox](/security/trust/trust_sandbox)
71
+* [Content trust in Docker](content_trust.md) 
72
+* [Automation with content trust](trust_automation.md)
73
+* [Play in a content trust sandbox](trust_sandbox.md)
... ...
@@ -15,7 +15,7 @@ The sandbox allows you to configure and try trust operations locally without
15 15
 impacting your production images.
16 16
 
17 17
 Before working through this sandbox, you should have read through the [trust
18
-overview](/security/trust/content_trust).
18
+overview](content_trust.md).
19 19
 
20 20
 ### Prerequisites
21 21
 
... ...
@@ -25,8 +25,8 @@ have `sudo` privileges on your local machine or in the VM.
25 25
 
26 26
 This sandbox requires you to install two Docker tools: Docker Engine and Docker
27 27
 Compose. To install the Docker Engine, choose from the [list of supported
28
-platforms](/installation). To install Docker Compose, see the
29
-[detailed instructions here](/compose/install).
28
+platforms](../../installation). To install Docker Compose, see the
29
+[detailed instructions here](https://docs.docker.com/compose/install.md).
30 30
 
31 31
 Finally, you'll need to have `git` installed on your local system or VM.
32 32
 
... ...
@@ -11,9 +11,9 @@ weight = 1
11 11
 
12 12
 # Get started with images
13 13
 
14
-In the [introduction](/introduction/understanding-docker/) we've discovered that Docker
14
+In the [introduction](../introduction/understanding-docker.md) we've discovered that Docker
15 15
 images are the basis of containers. In the
16
-[previous](/userguide/dockerizing/) [sections](/userguide/usingdocker/)
16
+[previous](dockerizing.md) [sections](usingdocker.md)
17 17
 we've used Docker images that already exist, for example the `ubuntu`
18 18
 image and the `training/webapp` image.
19 19
 
... ...
@@ -51,7 +51,7 @@ do this using the `docker images` command like so:
51 51
     ubuntu           10.04    3db9c44f4520  4 weeks ago  183 MB
52 52
     ubuntu           lucid    3db9c44f4520  4 weeks ago  183 MB
53 53
 
54
-We can see the images we've previously used in our [user guide](/userguide/).
54
+We can see the images we've previously used in our user guide.
55 55
 Each has been downloaded from [Docker Hub](https://hub.docker.com) when we
56 56
 launched a container using that image.
57 57
 
... ...
@@ -123,7 +123,7 @@ images for a variety of purposes. Many of these have been uploaded to
123 123
 [Docker Hub](https://hub.docker.com). We can search these images on the
124 124
 [Docker Hub](https://hub.docker.com) website.
125 125
 
126
-![indexsearch](/userguide/search.png)
126
+![indexsearch](search.png)
127 127
 
128 128
 We can also search for images on the command line using the `docker search`
129 129
 command. Let's say our team wants an image with Ruby and Sinatra installed on
... ...
@@ -146,9 +146,9 @@ We can see we've returned a lot of images that use the term `sinatra`. We've
146 146
 returned a list of image names, descriptions, Stars (which measure the social
147 147
 popularity of images - if a user likes an image then they can "star" it), and
148 148
 the Official and Automated build statuses.
149
-[Official Repositories](/docker-hub/official_repos) are a carefully curated set
149
+[Official Repositories](https://docs.docker.com/docker-hub/official_repos) are a carefully curated set
150 150
 of Docker repositories supported by Docker, Inc.  Automated repositories are
151
-[Automated Builds](/userguide/dockerrepos/#automated-builds) that allow you to
151
+[Automated Builds](dockerrepos.md#automated-builds) that allow you to
152 152
 validate the source and content of an image.
153 153
 
154 154
 We've reviewed the images available to use and we decided to use the
... ...
@@ -286,7 +286,7 @@ updating our APT cache, installing Ruby and RubyGems and then installing the
286 286
 Sinatra gem.
287 287
 
288 288
 > **Note:**
289
-> There are [a lot more instructions available to us in a Dockerfile](/reference/builder).
289
+> There are [a lot more instructions available to us in a Dockerfile](../reference/builder.md).
290 290
 
291 291
 Now let's take our `Dockerfile` and use the `docker build` command to build an image.
292 292
 
... ...
@@ -491,10 +491,10 @@ We can then create a container from our new image.
491 491
 > This is just a brief introduction to creating images. We've
492 492
 > skipped a whole bunch of other instructions that you can use. We'll see more of
493 493
 > those instructions in later sections of the Guide or you can refer to the
494
-> [`Dockerfile`](/reference/builder/) reference for a
494
+> [`Dockerfile`](../reference/builder.md) reference for a
495 495
 > detailed description and examples of every instruction.
496 496
 > To help you write a clear, readable, maintainable `Dockerfile`, we've also
497
-> written a [`Dockerfile` Best Practices guide](/articles/dockerfile_best-practices).
497
+> written a [`Dockerfile` Best Practices guide](../articles/dockerfile_best-practices.md).
498 498
 
499 499
 
500 500
 ## Setting tags on an image
... ...
@@ -551,8 +551,7 @@ private repository](https://registry.hub.docker.com/plans/).
551 551
 ## Remove an image from the host
552 552
 
553 553
 You can also remove images on your Docker host in a way [similar to
554
-containers](
555
-/userguide/usingdocker) using the `docker rmi` command.
554
+containers](usingdocker.md) using the `docker rmi` command.
556 555
 
557 556
 Let's delete the `training/sinatra` image as we don't need it anymore.
558 557
 
... ...
@@ -571,4 +570,4 @@ Until now we've seen how to build individual applications inside Docker
571 571
 containers. Now learn how to build whole application stacks with Docker
572 572
 by linking together multiple Docker containers.
573 573
 
574
-Go to [Linking Containers Together](/userguide/dockerlinks).
574
+Go to [Linking Containers Together](dockerlinks.md).
... ...
@@ -199,5 +199,5 @@ Excellent. Our container has been stopped.
199 199
 Now we've seen how simple it is to get started with Docker. Let's learn how to
200 200
 do some more advanced tasks.
201 201
 
202
-Go to [Working With Containers](/userguide/usingdocker).
202
+Go to [Working With Containers](usingdocker.md).
203 203
 
... ...
@@ -11,7 +11,7 @@ weight = 4
11 11
 
12 12
 # Linking containers together
13 13
 
14
-In [the Using Docker section](/userguide/usingdocker), you saw how you can
14
+In [the Using Docker section](usingdocker.md), you saw how you can
15 15
 connect to a service running inside a Docker container via a network
16 16
 port. But a port connection is only one way you can interact with services and
17 17
 applications running inside Docker containers. In this section, we'll briefly revisit
... ...
@@ -20,7 +20,7 @@ container linking.
20 20
 
21 21
 ## Connect using network port mapping
22 22
 
23
-In [the Using Docker section](/userguide/usingdocker), you created a
23
+In [the Using Docker section](usingdocker.md), you created a
24 24
 container that ran a Python Flask application:
25 25
 
26 26
     $ docker run -d -P training/webapp python app.py
... ...
@@ -28,9 +28,9 @@ container that ran a Python Flask application:
28 28
 > **Note:** 
29 29
 > Containers have an internal network and an IP address
30 30
 > (as we saw when we used the `docker inspect` command to show the container's
31
-> IP address in the [Using Docker](/userguide/usingdocker/) section).
31
+> IP address in the [Using Docker](usingdocker.md) section).
32 32
 > Docker can have a variety of network configurations. You can see more
33
-> information on Docker networking [here](/articles/networking/).
33
+> information on Docker networking [here](../articles/networking.md).
34 34
 
35 35
 When that container was created, the `-P` flag was used to automatically map
36 36
 any network port inside it to a random high port within an *ephemeral port
... ...
@@ -349,5 +349,5 @@ allowing linked communication to continue.
349 349
 Now that you know how to link Docker containers together, the next step is
350 350
 learning how to take complete control over docker networking.
351 351
 
352
-Go to [Docker Networking](/userguide/dockernetworks.md).
352
+Go to [Docker Networking](dockernetworks.md).
353 353
 
... ...
@@ -12,9 +12,9 @@ weight = 3
12 12
 # Docker container networking
13 13
 
14 14
 So far we've been introduced to some [basic Docker
15
-concepts](/userguide/usingdocker/), seen how to work with [Docker
16
-images](/userguide/dockerimages/) as well as learned about basic [networking
17
-and links between containers](/userguide/dockerlinks/). In this section
15
+concepts](usingdocker.md), seen how to work with [Docker
16
+images](dockerimages.md) as well as learned about basic [networking
17
+and links between containers](dockerlinks.md). In this section
18 18
 we're going to discuss how you can take control over more advanced 
19 19
 container networking.
20 20
 
... ...
@@ -516,4 +516,4 @@ Example : `docker daemon --cluster-store=consul://localhost:8500`
516 516
 Now that you know how to link Docker containers together, the next step is
517 517
 learning how to manage data, volumes and mounts inside your containers.
518 518
 
519
-Go to [Managing Data in Containers](/userguide/dockervolumes.md).
519
+Go to [Managing Data in Containers](dockervolumes.md).
... ...
@@ -12,8 +12,8 @@ weight = 2
12 12
 # Get started with Docker Hub
13 13
 
14 14
 So far you've learned how to use the command line to run Docker on your local host.
15
-You've learned how to [pull down images](/userguide/usingdocker/) to build containers
16
-from existing images and you've learned how to [create your own images](/userguide/dockerimages).
15
+You've learned how to [pull down images](usingdocker.md) to build containers
16
+from existing images and you've learned how to [create your own images](dockerimages.md).
17 17
 
18 18
 Next, you're going to learn how to use the [Docker Hub](https://hub.docker.com) to
19 19
 simplify and enhance your Docker workflows.
... ...
@@ -62,7 +62,7 @@ There you can see two example results: `centos` and `tianon/centos`. The second
62 62
 result shows that it comes from the public repository of a user, named
63 63
 `tianon/`, while the first result, `centos`, doesn't explicitly list a
64 64
 repository which means that it comes from the trusted top-level namespace for
65
-[Official Repositories](/docker-hub/official_repos). The `/` character separates
65
+[Official Repositories](https://docs.docker.com/docker-hub/official_repos/). The `/` character separates
66 66
 a user's repository from the image name.
67 67
 
68 68
 Once you've found the image you want, you can download it with `docker pull <imagename>`:
... ...
@@ -94,13 +94,13 @@ see the [Docker Hub](https://hub.docker.com) registry.
94 94
 
95 95
 Anyone can pull public images from the [Docker Hub](https://hub.docker.com)
96 96
 registry, but if you would like to share your own images, then you must
97
-[register first](/docker-hub/accounts).
97
+[register first](https://docs.docker.com/docker-hub/accounts).
98 98
 
99 99
 ## Pushing a repository to Docker Hub
100 100
 
101 101
 In order to push a repository to its registry, you need to have named an image
102 102
 or committed your container to a named image as we saw
103
-[here](/userguide/dockerimages).
103
+[here](dockerimages.md).
104 104
 
105 105
 Now you can push this repository to the registry designated by its name or tag.
106 106
 
... ...
@@ -12,9 +12,9 @@ weight = 3
12 12
 # Managing data in containers
13 13
 
14 14
 So far we've been introduced to some [basic Docker
15
-concepts](/userguide/usingdocker/), seen how to work with [Docker
16
-images](/userguide/dockerimages/) as well as learned about [networking
17
-and links between containers](/userguide/dockerlinks/). In this section
15
+concepts](usingdocker.md), seen how to work with [Docker
16
+images](dockerimages.md) as well as learned about [networking
17
+and links between containers](dockerlinks.md). In this section
18 18
 we're going to discuss how you can manage data inside and between your
19 19
 Docker containers.
20 20
 
... ...
@@ -28,7 +28,7 @@ Docker.
28 28
 
29 29
 A *data volume* is a specially-designated directory within one or more
30 30
 containers that bypasses the [*Union File
31
-System*](/reference/glossary#union-file-system). Data volumes provide several 
31
+System*](../reference/glossary.md#union-file-system). Data volumes provide several 
32 32
 useful features for persistent or shared data:
33 33
 
34 34
 - Volumes are initialized when a container is created. If the container's
... ...
@@ -142,7 +142,7 @@ Mounting a host directory can be useful for testing. For example, you can mount
142 142
 source code inside a container. Then, change the source code and see its effect
143 143
 on the application in real time. The directory on the host must be specified as
144 144
 an absolute path and if the directory doesn't exist Docker will automatically
145
-create it for you.  This auto-creation of the host path has been [*deprecated*](/userguide/dockervolumes/#auto-creating-missing-host-paths-for-bind-mounts).
145
+create it for you.  This auto-creation of the host path has been [*deprecated*](#auto-creating-missing-host-paths-for-bind-mounts).
146 146
 
147 147
 Docker volumes default to mount in read-write mode, but you can also set it to
148 148
 be mounted read-only.
... ...
@@ -281,4 +281,4 @@ combine Docker with the services available on
281 281
 [Docker Hub](https://hub.docker.com) including Automated Builds and private
282 282
 repositories.
283 283
 
284
-Go to [Working with Docker Hub](/userguide/dockerrepos).
284
+Go to [Working with Docker Hub](dockerrepos.md).
... ...
@@ -48,6 +48,6 @@ operates on. You use Docker to push and pull images (data) to a registry.
48 48
 Content trust gives you the ability to both verify the integrity and the
49 49
 publisher of all the data received from a registry over any channel.
50 50
 
51
-[Content trust](/security/trust) is currently only available for users of the
51
+[Content trust](../security/trust/) is currently only available for users of the
52 52
 public Docker Hub. It is currently not available for the Docker Trusted Registry
53 53
 or for private registries.
... ...
@@ -10,7 +10,7 @@ parent = "mn_fun_docker"
10 10
 
11 11
 # Welcome to the Docker user guide
12 12
 
13
-In the [Introduction](/misc) you got a taste of what Docker is and how it
13
+In the [Introduction](../misc) you got a taste of what Docker is and how it
14 14
 works. In this guide we're going to take you through the fundamentals of
15 15
 using Docker and integrating it into your environment.
16 16
 
... ...
@@ -33,7 +33,7 @@ Docker Hub is the central hub for Docker. It hosts public Docker images
33 33
 and provides services to help you build and manage your Docker
34 34
 environment. To learn more:
35 35
 
36
-Go to [Using Docker Hub](/docker-hub).
36
+Go to [Using Docker Hub](https://docs.docker.com/docker-hub).
37 37
 
38 38
 ## Dockerizing applications: A "Hello world"
39 39
 
... ...
@@ -42,7 +42,7 @@ Go to [Using Docker Hub](/docker-hub).
42 42
 Docker offers a *container-based* virtualization platform to power your
43 43
 applications. To learn how to Dockerize applications and run them:
44 44
 
45
-Go to [Dockerizing Applications](/docs/userguide/dockerizing.md).
45
+Go to [Dockerizing Applications](dockerizing.md).
46 46
 
47 47
 ## Working with containers
48 48
 
... ...
@@ -52,7 +52,7 @@ Once you get a grip on running your applications in Docker containers
52 52
 we're going to show you how to manage those containers. To find out
53 53
 about how to inspect, monitor and manage containers:
54 54
 
55
-Go to [Working With Containers](/docs/userguide/usingdocker.md).
55
+Go to [Working With Containers](usingdocker.md).
56 56
 
57 57
 ## Working with Docker images
58 58
 
... ...
@@ -61,7 +61,7 @@ Go to [Working With Containers](/docs/userguide/usingdocker.md).
61 61
 Once you've learnt how to use Docker it's time to take the next step and
62 62
 learn how to build your own application images with Docker.
63 63
 
64
-Go to [Working with Docker Images](/docs/userguide/dockerimages.md).
64
+Go to [Working with Docker Images](dockerimages.md).
65 65
 
66 66
 ## Linking containers together
67 67
 
... ...
@@ -69,7 +69,7 @@ Until now we've seen how to build individual applications inside Docker
69 69
 containers. Now learn how to build whole application stacks with Docker
70 70
 by linking together multiple Docker containers.
71 71
 
72
-Go to [Linking Containers Together](/docs/userguide/dockerlinks.md).
72
+Go to [Linking Containers Together](dockerlinks.md).
73 73
 
74 74
 ## Docker container networking
75 75
 
... ...
@@ -79,14 +79,14 @@ choice to the end-users. Now, lets learn about a flexible way to connect
79 79
 containers together within a host or across multiple hosts in a cluster
80 80
 using various networking technologies, with the help of extensible plugins.
81 81
 
82
-Go to [Docker Networking](/docs/userguide/dockernetworks.md).
82
+Go to [Docker Networking](dockernetworks.md).
83 83
 
84 84
 ## Managing data in containers
85 85
 
86 86
 Now we know how to link Docker containers together the next step is
87 87
 learning how to manage data, volumes and mounts inside our containers.
88 88
 
89
-Go to [Managing Data in Containers](/docs/userguide/dockervolumes.md).
89
+Go to [Managing Data in Containers](dockervolumes.md).
90 90
 
91 91
 ## Working with Docker Hub
92 92
 
... ...
@@ -94,7 +94,7 @@ Now we've learned a bit more about how to use Docker we're going to see
94 94
 how to combine Docker with the services available on Docker Hub including
95 95
 Trusted Builds and private repositories.
96 96
 
97
-Go to [Working with Docker Hub](/docs/userguide/dockerrepos.md).
97
+Go to [Working with Docker Hub](dockerrepos.md).
98 98
 
99 99
 ## Docker Compose
100 100
 
... ...
@@ -102,7 +102,7 @@ Docker Compose allows you to define a application's components -- their containe
102 102
 configuration, links and volumes -- in a single file. Then a single command
103 103
 will set everything up and start your application running.
104 104
 
105
-Go to [Docker Compose user guide](/compose/).
105
+Go to [Docker Compose user guide](https://docs.docker.com/compose/).
106 106
 
107 107
 ## Docker Machine
108 108
 
... ...
@@ -111,7 +111,7 @@ can set up hosts for Docker Engines on your computer, on cloud providers,
111 111
 and/or in your data center, and then configure your Docker client to securely
112 112
 talk to them.
113 113
 
114
-Go to [Docker Machine user guide](/machine/).
114
+Go to [Docker Machine user guide](https://docs.docker.com/machine/).
115 115
 
116 116
 ## Docker Swarm
117 117
 
... ...
@@ -119,7 +119,7 @@ Docker Swarm pools several Docker Engines together and exposes them as a single
119 119
 virtual Docker Engine. It serves the standard Docker API, so any tool that already
120 120
 works with Docker can now transparently scale up to multiple hosts.
121 121
 
122
-Go to [Docker Swarm user guide](/swarm/).
122
+Go to [Docker Swarm user guide](https://docs.docker.com/swarm/).
123 123
 
124 124
 ## Getting help
125 125
 
... ...
@@ -10,7 +10,7 @@ parent="smn_containers"
10 10
 
11 11
 # Working with containers
12 12
 
13
-In the [last section of the Docker User Guide](/userguide/dockerizing)
13
+In the [last section of the Docker User Guide](dockerizing.md)
14 14
 we launched our first containers. We launched containers using the
15 15
 `docker run` command:
16 16
 
... ...
@@ -82,7 +82,7 @@ To see usage for a specific command, specify the command with the `--help` flag:
82 82
 
83 83
 > **Note:** 
84 84
 > For further details and examples of each command, see the
85
-> [command reference](/reference/commandline/cli/) in this guide.
85
+> [command reference](../reference/commandline/cli.md) in this guide.
86 86
 
87 87
 ## Running a web application in Docker
88 88
 
... ...
@@ -110,8 +110,8 @@ Lastly, we've specified a command for our container to run: `python app.py`. Thi
110 110
 
111 111
 > **Note:** 
112 112
 > You can see more detail on the `docker run` command in the [command
113
-> reference](/reference/commandline/run) and the [Docker Run
114
-> Reference](/reference/run/).
113
+> reference](../reference/commandline/run.md) and the [Docker Run
114
+> Reference](../reference/run.md).
115 115
 
116 116
 ## Viewing our web application container
117 117
 
... ...
@@ -130,7 +130,7 @@ command. This tells the `docker ps` command to return the details of the
130 130
 > containers. If you want to see stopped containers too use the `-a` flag.
131 131
 
132 132
 We can see the same details we saw [when we first Dockerized a
133
-container](/userguide/dockerizing) with one important addition in the `PORTS`
133
+container](dockerizing.md) with one important addition in the `PORTS`
134 134
 column.
135 135
 
136 136
     PORTS
... ...
@@ -141,7 +141,7 @@ ports exposed in our image to our host.
141 141
 
142 142
 > **Note:** 
143 143
 > We'll learn more about how to expose ports in Docker images when
144
-> [we learn how to build images](/userguide/dockerimages).
144
+> [we learn how to build images](dockerimages.md).
145 145
 
146 146
 In this case Docker has exposed port 5000 (the default Python Flask
147 147
 port) on port 49155.
... ...
@@ -166,7 +166,7 @@ Docker host.
166 166
 So let's now browse to port 49155 in a web browser to
167 167
 see the application.
168 168
 
169
-![Viewing the web application](/userguide/webapp1.png).
169
+![Viewing the web application](webapp1.png).
170 170
 
171 171
 Our Python application is live!
172 172
 
... ...
@@ -178,7 +178,7 @@ Our Python application is live!
178 178
 >     $ docker-machine ip my-docker-vm
179 179
 >     192.168.99.100
180 180
 > 
181
-> In this case you'd browse to http://192.168.99.100:49155 for the above example.
181
+> In this case you'd browse to `http://192.168.99.100:49155` for the above example.
182 182
 
183 183
 ## A network port shortcut
184 184
 
... ...
@@ -309,5 +309,5 @@ Until now we've only used images that we've downloaded from
309 309
 [Docker Hub](https://hub.docker.com). Next, let's get introduced to
310 310
 building and sharing our own images.
311 311
 
312
-Go to [Working with Docker Images](/userguide/dockerimages).
312
+Go to [Working with Docker Images](dockerimages.md).
313 313