Public Repository

Last pushed: a year ago
Short Description
Redirect HTTP to HTTPS with Docker
Full Description

go-ssl-redirect

Supported Tags and Dockerfile links

What is this?

This image accepts any http request and redirects to the https version of the same page.
It does not serve any pages.

What is this for?

The primary reason for this image is for doing SSL termination on a load balancer (eg: AWS ELB) in the simplest possible way.

How do I use it?

  • Run this image on any TCP port, and your own web server image on another.
    docker run -d -p 8080:80 scottmiller171/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.

How do I build it myself?

Assuming you have go installed, do the following:

CGO_ENABLED=0 GOOS=linux go build -a -ldflags '-s'
docker build -t go-ssl-redirect .
docker run go-ssl-redirect

I am doing the build outside of a Docker container so that I can reduce the size of the image. The official GoLang container is 725 MB in size. By doing it this way, this entire container is only 5.5MB

Docker Pull Command
Owner
scottmiller171

Comments (0)