Redirect HTTP to HTTPS with Docker
This image accepts any http request and redirects to the https version of the same page.
It does not serve any pages.
The primary reason for this image is for doing SSL termination on a load balancer (eg: AWS ELB) in the simplest possible way.
- Run this image on any TCP port, and your own web server image on another.
docker run -d -p 8080:80 hverr/go-ssl-redirect
docker run -d -p 80:80 my-web-server-image
- Forward HTTP 80 on your load balancer to whatever port this image is running on.
- Forward HTTPS 443 on your load balancer to whatever port your own web server is running on.
All HTTP requests will hit this image and be redirected to make HTTPS request. This is abstracted from the user.
Assuming you have go installed, do the following:
go build
docker build -t go-ssl-redirect .
docker run go-ssl-redirect