项目作者: jgcl

项目描述 :
Docker Nginx Proxy
高级语言:
项目地址: git://github.com/jgcl/docker-nginx-proxy.git
创建时间: 2020-05-26T13:45:55Z
项目社区:https://github.com/jgcl/docker-nginx-proxy

开源协议:

下载


Docker Nginx Proxy

A simple example of how to use the Docker Nginx Proxy as a simple router that can connect to LetsEncrypt and provide free SSL certificate.

I used the following images and projects:

See docker-compose.yml file:

  1. version: "3.3"
  2. services:
  3. whoami:
  4. container_name: whoami
  5. image: containous/whoami
  6. restart: unless-stopped
  7. network_mode: "bridge"
  8. environment:
  9. - VIRTUAL_HOST=whoami.localhost,whoami.joaogabriel.org
  10. - LETSENCRYPT_HOST=whoami.joaogabriel.org
  11. - LETSENCRYPT_EMAIL=gabriel@joaogabriel.org
  12. nginx_proxy:
  13. container_name: nginx_proxy
  14. image: jwilder/nginx-proxy:alpine
  15. volumes:
  16. - nginx_proxy_nginx_certs:/etc/nginx/certs
  17. - nginx_proxy_nginx_vhost_d:/etc/nginx/vhost.d
  18. - nginx_proxy_nginx_html:/usr/share/nginx/html
  19. - /var/run/docker.sock:/tmp/docker.sock:ro
  20. restart: unless-stopped
  21. network_mode: "bridge"
  22. environment:
  23. - ENABLE_IPV6=true
  24. - DEFAULT_HOST=whoami.joaogabriel.org
  25. ports:
  26. - 80:80
  27. - 443:443
  28. lets_encrypt:
  29. container_name: lets_encrypt
  30. image: jrcs/letsencrypt-nginx-proxy-companion
  31. volumes:
  32. - nginx_proxy_nginx_certs:/etc/nginx/certs
  33. - nginx_proxy_nginx_vhost_d:/etc/nginx/vhost.d
  34. - nginx_proxy_nginx_html:/usr/share/nginx/html
  35. - /var/run/docker.sock:/var/run/docker.sock:ro
  36. environment:
  37. - NGINX_PROXY_CONTAINER=nginx_proxy
  38. restart: unless-stopped
  39. network_mode: "bridge"
  40. depends_on:
  41. - nginx_proxy
  42. volumes:
  43. nginx_proxy_nginx_certs:
  44. nginx_proxy_nginx_vhost_d:
  45. nginx_proxy_nginx_html:

The volumes are used to persist SSL certificates (do this because LetsEncrypt has a rate limit).

Another option

Another option is to use Traefik, a more complete proxy with a dashboard included.
https://github.com/jgcl/docker-traefik-proxy