api/server/MAINTAINERS: add proppy and vieux

Docker-DCO-1.1-Signed-off-by: Johan Euphrosine <proppy@google.com> (github: proppy)
removed expect from mkimage-arch since it was not working

Docker-DCO-1.1-Signed-off-by: NikolaMandic <mn080202@gmail.com> (github: NikolaMandic)
Update gorilla/context

Race condition was fixed recently
Docker-DCO-1.1-Signed-off-by: Alexandr Morozov <lk4d4math@gmail.com> (github: LK4D4)
Merge branch 'master' of https://github.com/NikolaMandic/docker into NikolaMandic-master

* 'master' of https://github.com/NikolaMandic/docker:
  removed expect from mkimage-arch since it was not working

Conflicts:
	contrib/mkimage-arch.sh

Docker-DCO-1.1-Signed-off-by: Andrew Page <admwiggin@gmail.com> (github: tianon)
Merge pull request #6784 from tianon/NikolaMandic-master

Update contrib/mkimage-arch.sh to remove use of "expect" since the output of pacstrap has changed
Merge pull request #6749 from LK4D4/update_gorilla_context

Update gorilla/context
Fixed typographical erros in the documentation

Used the RETF rules provided by Wikipedia to fix some typographical
errors in the Markdown files of the documentation with the following
script:

https://github.com/openstack/openstack-doc-tools/tree/master/cleanup/retf

Docker-DCO-1.1-Signed-off-by: Christian Berendt <berendt@b1-systems.de> (github: berendt)

Docker-DCO-1.1-Signed-off-by: Christian Berendt <berendt@b1-systems.de> (github: SvenDowideit)
blindly make all uses of e\.?g\.? into e.g.,

Docker-DCO-1.1-Signed-off-by: SvenDowideit <SvenDowideit@home.org.au> (github: SvenDowideit)
Merge pull request #6764 from SvenDowideit/pr_out_blindly_make_all_uses_of_e_g_into_e_g_

blindly make all uses of e\.?g\.? into e.g.,
Merge pull request #6366 from proppy/add-proppy-server

api/MAINTAINERS: add proppy for server/
Support hairpin NAT

This re-applies commit b39d02b with additional iptables rules to solve the issue with containers routing back into themselves.

The previous issue with this attempt was that the DNAT rule would send traffic back into the container it came from. When this happens you have 2 issues.
1) reverse path filtering. The container is going to see the traffic coming in from the outside and it's going to have a source address of itself. So reverse path filtering will kick in and drop the packet.
2) direct return mismatch. Assuming you turned reverse path filtering off, when the packet comes back in, it's goign to have a source address of itself, thus when the reply traffic is sent, it's going to have a source address of itself. But the original packet was sent to the host IP address, so the traffic will be dropped because it's coming from an address which the original traffic was not sent to (and likely with an incorrect port as well).

The solution to this is to masquerade the traffic when it gets routed back into the origin container. However for this to work you need to enable hairpin mode on the bridge port, otherwise the kernel will just drop the traffic.
The hairpin mode set is part of libcontainer, while the MASQ change is part of docker.

This reverts commit 63c303eecdbaf4dc7967fd51b82cd447c778cecc.

Docker-DCO-1.1-Signed-off-by: Patrick Hemmer <patrick.hemmer@gmail.com> (github: phemmer)