27 lines
900 B
Markdown
27 lines
900 B
Markdown
|
# SSL Termination using haproxy
|
||
|
This image translates between plain http and https using haproxy.
|
||
|
|
||
|
## How it works
|
||
|
```
|
||
|
+---------------------+ +--------+
|
||
|
+---+ | +--+ |
|
||
|
-->|443| docker_ssl_endpoint |<---->|80| target |
|
||
|
+---+ | +--+ |
|
||
|
+----------+----------+ +--------+
|
||
|
|
|
||
|
|
|
||
|
+-----+-----+
|
||
|
| cert data |
|
||
|
+-----------+
|
||
|
|
||
|
```
|
||
|
|
||
|
The *docker_ssl_endpoint* Container listens on port 443 (expose this port for
|
||
|
public) availability. All secure connections coming in on this port are handled
|
||
|
using the certificates form the *cert data* volume and passed on to the *target*
|
||
|
container's port 80.
|
||
|
|
||
|
## Starting the container
|
||
|
|
||
|
`docker run --name ssl_endpoint -v $PATH_TO_CERT_DATA:/data -p $IP:443:443 d --link nginx:target docker_ssl_endpoint`
|