Files
Traefik-Redis-Api/README.md
Ron Rise edd09d9e97
All checks were successful
🧪✨ Tests Workflow / License Check (push) Successful in 2m50s
🧪✨ Tests Workflow / Code Lint (push) Successful in 2m52s
🧪✨ Tests Workflow / Unit Tests (push) Successful in 2m50s
🧪✨ Tests Workflow / Code Sniffer (push) Successful in 2m55s
Update README.md
2025-05-20 19:00:35 -04:00

3.0 KiB

Traefik Redis Provider API

Gitea Tests

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 is localhost.
  • REDIS_PORT: The port of the Redis server. Default is 6379.
  • REDIS_DATABASE: The database number to use. Default is 0.
  • HTTP_PORT: The port to run the HTTP server on. Default is 9501.
 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.