3.0 KiB
3.0 KiB
Traefik Redis Provider API
Traefik is a modern HTTP reverse proxy and load balancer that makes deploying microservices easy. This project provides an api manager for the Redis provider for Traefik, allowing you to use Redis as a dynamic configuration backend.
Running the Project
Prerequisites
- Docker
- Traefik
- Redis
Environment Variables
REDIS_HOST
: The URL of the Redis server. Default islocalhost
.REDIS_PORT
: The port of the Redis server. Default is6379
.REDIS_DATABASE
: The database number to use. Default is0
.HTTP_PORT
: The port to run the HTTP server on. Default is9501
.
docker run --rm -it -p 9501:9501 scr.siteworxpro.com/traefik-api:v1.3.0
Usage
Get All Routes
GET http://localhost:9501/http/routes
Accept: application/json
[
"route-1",
"route-2"
]
Get a Route
GET http://localhost:9501/http/routes/route-1
Accept: application/json
{
"id": "route-1",
"rule": "Host(`example.com`)",
"service": "service-1",
"middlewares": [
"middleware-1"
]
}
Dev Environment
Prerequisites
- Docker
- Docker Compose
Starting the Runtime
docker-compose up -d
Start the server
docker exec -it traefik-redis-api-dev-runtime-1 rr serve
You can access the api at http://localhost:9501/
Xdebug
xdebug needs to be built into the container before it will work
docker exec -it traefik-redis-api-dev-runtime-1 bin/xdebug.sh
Install the dependencies
docker run --rm -v $(PWD):/app siteworxpro/composer install --ignore-platform-reqs
Running all tests
docker run --rm -v $(PWD):/app siteworxpro/composer run tests:all
License
Copyright (c)2025 Siteworx Professionals, LLC
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated
documentation
files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use,
copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom
the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the
Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR
OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.