Proxier is a high-performance reverse proxy that routes external requests to predefined origin servers.
It is lightweight, configurable via config.yaml
, and supports multiple endpoints.
- 🌍 Dynamic Proxy Routing – Easily define multiple proxy rules in
config.yaml
- 🛠 Simple Configuration – No database required, just YAML-based settings
- 🚀 Fast & Efficient – Optimized request forwarding
- 🏗 Cross-Platform – Works on Linux, macOS, and Windows
Download latest version from Release.
go install github.com/ezex-io/proxier@latest
docker pull ezexio/proxier:latest
docker run -p 8080:8080 -v $(pwd)/config.yaml:/etc/proxier/config.yaml ezexio/proxier
git clone https://github.com/ezex-io/proxier.git
cd proxier
go build -o proxier ./cmd/proxier/main.go
Define your proxy routes in a YAML config file:
server:
host: "0.0.0.0"
listen_port: "8080"
fast_http: true
proxy:
- endpoint: /foo1
destination_url: "https://example.com/bar1"
- endpoint: /foo2
destination_url: "https://example.com/bar2"
- endpoint: /foo3
destination_url: "https://example.com/bar3"
./proxier -config ./config.yaml
curl -i http://localhost:8080/
Response:
HTTP/1.1 200 OK
Proxier is running
curl -i http://localhost:8080/livez
Response:
HTTP/1.1 200 OK
OK
Example request to dex
proxy:
curl -i http://localhost:8080/dex/
git clone https://github.com/ezex-io/proxier.git
cd proxier
go mod tidy
make test
make build_linux
make check
Proxier is licensed under the MIT License. See LICENSE for details.
We welcome contributions! Please follow these steps:
- Fork the repository
- Create a new branch (
feature/my-feature
) - Commit your changes (
git commit -m "Add new feature"
) - Push your branch (
git push origin feature/my-feature
) - Create a Pull Request