GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - HugoDF/docker-compose-local-https: Examples of local HTTPS with docker-compose + mkcert + nginx/Caddy

BranchesTags
Open more actions menu

Latest commit

 

History

9 Commits
9 Commits

Folders and files

NameName
Last commit message
Last commit date
.github
.github
 
 
caddy-gen
caddy-gen
 
 
caddy
caddy
 
 
nginx
nginx
 
 
.editorconfig
.editorconfig
 
 
.gitignore
.gitignore
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
init.sh
init.sh
 
 

Repository files navigation

Docker Compose local HTTPS

Examples of local HTTPS with docker-compose + mkcert

Prerequisites

  • mkcert
  • Docker Desktop

Run mkcert -install

Run ./init.sh (creates local certificates using mkcert and copies them to where the Caddy and nginx examples expect them)

The setup

Each example has a barebones Node app running on the official Node 10 Docker image running on port 8080.

The Node code is at ./caddy/app/index.js, ./caddy-gen/app/index.js and ./nginx/app/index.js.

It also has a reverse-proxy set up using Caddy and nginx respectively which

Caddy Example with Caddyfile

Caddy is the HTTP/2 web server with automatic HTTPS.

https://caddyserver.com/

See ./caddy, uses https://github.com/abiosoft/caddy-docker Docker image.

To run it:

cd caddy
docker-compose up

Then either navigate to https://foo.test or curl https://foo.test.

Note: the nginx/Caddy examples needs to be stopped before starting this Caddy example

Caddy Example with docker-gen

Caddy is the HTTP/2 web server with automatic HTTPS.

https://caddyserver.com/

This image leverages Docker-gen to "Generate files from docker container meta-data".

Which allows us to build the configuration for the reverse proxy using labels on the target container (without a Caddyfile, that's the file generated from the labels).

See ./caddy-gen, uses https://github.com/wemake-services/caddy-gen Docker image.

cd caddy-gen
docker-compose up

Then either navigate to https://foo.test or curl https://foo.test.

Note: the nginx/other Caddy examples needs to be stopped before starting the Caddy example

nginx Example

nginx is a web server which can also be used as a reverse proxy, load balancer, mail proxy and HTTP cache.

Wikipedia

See ./nginx, uses https://github.com/jwilder/nginx-proxy Docker image.

This image leverages Docker-gen to "Generate files from docker container meta-data".

cd nginx
docker-compose up

Then either navigate to https://foo.test or curl https://foo.test.

Note: the Caddy examples needs to be stopped before starting the nginx example

About

Examples of local HTTPS with docker-compose + mkcert + nginx/Caddy

codewithhugo.com/docker-compose-local-https/

Topics

caddydockerdocker-composehttpshttps-proxymkcertnginxnodejstls

Resources

Readme
MIT license
Activity

Stars

90 stars

Watchers

0 watching

Forks

18 forks
Report repository

Releases

Sponsor this project

Packages

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.