Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/belak/go-rproxy
A simple PoC reverse proxy designed to make simple docker deployments easier
https://github.com/belak/go-rproxy
Last synced: about 2 months ago
JSON representation
A simple PoC reverse proxy designed to make simple docker deployments easier
- Host: GitHub
- URL: https://github.com/belak/go-rproxy
- Owner: belak
- License: mit
- Created: 2019-11-13T09:35:48.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2019-11-14T21:03:12.000Z (about 5 years ago)
- Last Synced: 2024-05-01T20:30:24.468Z (9 months ago)
- Language: Go
- Size: 23.4 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# go-rproxy
A simple PoC reverse proxy designed to make basic docker deployments easier.
This project was born out of the frustrations with other reverse proxy setups.
Many of them are either extremely complicated or don't handle docker containers
automatically or are missing other features.It is designed as an opinionated reverse proxy and will not work for all use
cases.## Features
Upcoming features:
- Use docker labels to determine where to proxy
- Automatically acquire TLS certs from letsencrypt
- Handle http (and redirect all http to https)
- Easily run in dockerWishlisted features:
- Handle tcp (with SSL termination)
## Label examples
- `rproxy.frontend`
- http://coded.io/blog
match all https requests going to https://coded.io/blog (and all sub-paths).
This will additionally handle redirecting from http to https.- `rproxy.backend`
- http://:8000
send all requests to the docker container this is attached to on port 8000.
- http://coded.io/blog
send all requests to http://coded.io/blogLabels can be used in either the singular form (`rproxy.backend`) or the plural
form (`rproxy.frontend.name`). Using the plural form will allow you to specify
multiple proxys for a single container. Also note that any named frontend will
match up with a backend with the same name. If a non-singular frontend or
backend is missing its match, it will be disabled.