{"id":13580121,"url":"https://github.com/azrikahar/docker-reverse-proxies","last_synced_at":"2025-03-22T02:31:59.906Z","repository":{"id":41634015,"uuid":"264491248","full_name":"azrikahar/docker-reverse-proxies","owner":"azrikahar","description":"Sample usage for various reverse proxies in Docker setups","archived":false,"fork":false,"pushed_at":"2022-12-12T21:44:28.000Z","size":901,"stargazers_count":53,"open_issues_count":21,"forks_count":3,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-18T07:12:19.690Z","etag":null,"topics":["caddy","docker","docker-compose","haproxy","nginx-proxy","reverse-proxy","traefik"],"latest_commit_sha":null,"homepage":"https://dockerreverseproxies.netlify.app","language":"DIGITAL Command Language","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/azrikahar.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-05-16T17:36:43.000Z","updated_at":"2025-01-13T09:04:07.000Z","dependencies_parsed_at":"2022-08-10T06:50:18.687Z","dependency_job_id":null,"html_url":"https://github.com/azrikahar/docker-reverse-proxies","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azrikahar%2Fdocker-reverse-proxies","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azrikahar%2Fdocker-reverse-proxies/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azrikahar%2Fdocker-reverse-proxies/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/azrikahar%2Fdocker-reverse-proxies/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/azrikahar","download_url":"https://codeload.github.com/azrikahar/docker-reverse-proxies/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244898185,"owners_count":20528331,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["caddy","docker","docker-compose","haproxy","nginx-proxy","reverse-proxy","traefik"],"created_at":"2024-08-01T15:01:47.666Z","updated_at":"2025-03-22T02:31:59.442Z","avatar_url":"https://github.com/azrikahar.png","language":"DIGITAL Command Language","funding_links":[],"categories":["DIGITAL Command Language"],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://dockerreverseproxies.netlify.app/\" target=\"_blank\"\u003e\n    \u003cimg width=\"auto\" height=\"250\" src=\"https://raw.githubusercontent.com/azrikahar/docker-reverse-proxies/master/docs/.vuepress/public/logo.svg\" alt=\"logo\"\u003e\n  \u003c/a\u003e\n  \u003ch1 align=\"center\"\u003eDocker Reverse Proxies\u003c/h1\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://dockerreverseproxies.netlify.app/\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://badgen.net/badge/docs/vuepress/green\" alt=\"license\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://app.netlify.com/sites/dockerreverseproxies/deploys\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://api.netlify.com/api/v1/badges/1821c63e-48aa-4ea4-ac0e-5150ba9eb2a0/deploy-status\" alt=\"netlify badge\"\u003e\n  \u003c/a\u003e\n  \u003cspan\u003e\n     \u003cimg src=\"https://visitor-badge.glitch.me/badge?page_id=azrikahar.docker-reverse-proxies\" alt=\"visitor badge\"/\u003e\n  \u003c/span\u003e\n  \u003ca href=\"https://github.com/azrikahar/docker-reverse-proxies/blob/master/LICENSE\" target=\"_blank\"\u003e\n    \u003cimg src=\"https://badgen.net/github/license/azrikahar/docker-reverse-proxies\" alt=\"license\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\nThis repo aims to show examples on how to setup reverse proxy using various reverse proxies available in Docker containers. Since we will setup each reverse proxy to do the exact same thing in every scenario, hopefully it gives a better understanding for someone familiar with one of the reverse proxy but not the other ones.\n\n## Documentation: [dockerreverseproxies.netlify.app](https://dockerreverseproxies.netlify.app/)\n\n## Reverse proxies included\n\n| Reverse Proxy           | Official Site        | Official Docs        | GitHub                             | Docker Hub                            |\n| ----------------------- | -------------------- | -------------------- | ---------------------------------- | ------------------------------------- |\n| **Caddy v2**            | [Link][caddy site]   | [Link][caddy docs]   | [Link][caddy github]               | [Link][caddy dockerhub]               |\n| **HAProxy**             | [Link][haproxy site] | [Link][haproxy docs] | [Link][haproxy github]             | [Link][haproxy dockerhub]             |\n| **jwilder/nginx-proxy** |                      |                      | [Link][jwilder/nginx-proxy github] | [Link][jwilder/nginx-proxy dockerhub] |\n| **Traefik v2**          | [Link][traefik site] | [Link][traefik docs] | [Link][traefik github]             | [Link][traefik dockerhub]             |\n\n\u003c!-- Links used above to keep table clean --\u003e\n[caddy site]: https://caddyserver.com/v2\n[caddy docs]: https://caddyserver.com/docs\n[caddy github]: https://github.com/caddyserver/caddy\n[caddy dockerhub]: https://hub.docker.com/_/caddy\n[haproxy site]: https://www.haproxy.org\n[haproxy docs]: http://cbonte.github.io/haproxy-dconv\n[haproxy github]: https://github.com/haproxy/haproxy\n[haproxy dockerhub]: https://hub.docker.com/r/lucaslorentz/caddy-docker-proxy\n[jwilder/nginx-proxy github]: https://github.com/nginx-proxy/nginx-proxy\n[jwilder/nginx-proxy dockerhub]: https://hub.docker.com/r/jwilder/nginx-proxy\n[traefik site]: https://containo.us/traefik\n[traefik docs]: https://docs.traefik.io\n[traefik github]: https://github.com/containous/traefik\n[traefik dockerhub]: https://hub.docker.com/_/traefik\n\n## Scenarios\n\n| Scenario   | Summary                                                                                                                                    | Link                      |\n| ---------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------- |\n| **Basic**  | Shows the bare minimum of setting up each reverse proxy with HTTP only. They resolve the exact same domain, subdomain and subpath.         | [View scenario][docs-basic] |\n| **Secure** | Shows how to setup HTTPS and get valid certs from Let's Encrypt (LE). This includes how to get certs from LE's staging server for testing. | [View scenario][docs-secure] |\n\n\u003c!-- Links to documentation for each scenario in above table --\u003e\n[docs-basic]: https://dockerreverseproxies.netlify.app/basic\n[docs-secure]: https://dockerreverseproxies.netlify.app/secure\n\n## Future plans\n\n- Add **Secure** (HTTPS) scenario. _[ IN PROGRESS ]_\n- Add **Load Balancing** scenario.\n- Add **Basic Auth** scenario.\n- Explore various variations that enhances the vanilla reverse proxies used above:\n  - **lucaslorentz/caddy-docker-proxy** ( [GitHub](https://github.com/lucaslorentz/caddy-docker-proxy) | [Docker Hub](https://hub.docker.com/r/lucaslorentz/caddy-docker-proxy) ): Basically what jwilder/nginx-proxy is for nginx, but for caddy.\n  - **jc21/nginx-proxy-manager** ( [GitHub](https://github.com/jc21/nginx-proxy-manager) | [Docker Hub](https://hub.docker.com/r/jc21/nginx-proxy-manager) ): Easy UI based management for Nginx\n- Create documentation site. _[ IN PROGRESS ]_\n- Possibly a simple checklist/quiz for users to find out which reverse proxies are more suitable for their use case.\n\n## License\n\n[MIT](https://github.com/azrikahar/docker-reverse-proxies/blob/master/LICENSE)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazrikahar%2Fdocker-reverse-proxies","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fazrikahar%2Fdocker-reverse-proxies","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fazrikahar%2Fdocker-reverse-proxies/lists"}