@@ -29,7 +29,48 @@ Notably, tokens do not expire. There is no rate limiting or brute-force protecti
2929- ** Frontend** : Web UI in TypeScript + React + Vite
3030- ** Storage** : Valkey, a Redis fork, for token storage
3131
32- ## Quick Start
32+ ## Deployment
33+
34+ ### Kubernetes (Helm)
35+
36+ Add the Helm repository:
37+
38+ ``` bash
39+ helm repo add rusty-valkey-forward-auth https://sintef.github.io/rusty-valkey-forward-auth
40+ helm repo update
41+ ```
42+
43+ Generate a secure token salt:
44+
45+ ``` bash
46+ openssl rand -hex 32
47+ ```
48+
49+ Install the chart:
50+
51+ ``` bash
52+ helm install rvfa rusty-valkey-forward-auth/rusty-valkey-forward-auth \
53+ --set config.tokenSalt=" your-64-character-hex-salt" \
54+ --set config.oauth.issuerUrl=" https://your-oauth-provider/realms/your-realm" \
55+ --set config.frontend.oidcAuthority=" https://your-oauth-provider/realms/your-realm" \
56+ --set config.frontend.oidcClientId=" your-client-id"
57+ ```
58+
59+ For advanced configuration options, including custom values files, ingress, and resource limits, see the [ Helm chart documentation] ( charts/rusty-valkey-forward-auth/ ) .
60+
61+ ## Traefik Integration
62+
63+ Configure Traefik to use this service for forward authentication:
64+
65+ ``` yaml
66+ http :
67+ middlewares :
68+ rusty-valkey-auth :
69+ forwardAuth :
70+ address : " http://rusty-valkey-forward-auth:8080/forward-auth"
71+ ` ` `
72+
73+ ## Development
3374
3475### Prerequisites
3576
@@ -101,8 +142,6 @@ cargo run
101142
102143The service runs on `http://localhost:8080` and serves the frontend UI at `/`.
103144
104- ## Development
105-
106145# ## Setup
107146
108147Install pre-commit hooks :
@@ -140,52 +179,6 @@ npm run lint # Linting
140179
141180Set `VITE_API_BASE_URL` to point to your backend API (defaults to `http://localhost:8080`).
142181
143- ## Deployment
144-
145- ### Docker
146-
147- ``` bash
148- docker build -t rusty-valkey-forward-auth .
149- docker run -e VALKEY_URL=redis://host.docker.internal:6379 \
150- -p 8080:8080 \
151- rusty-valkey-forward-auth
152- ```
153-
154- Multi-stage build: Rust backend + Node.js frontend compiled, served from distroless runtime.
155-
156- ### Kubernetes (Helm)
157-
158- ` values.example.yaml ` :
159-
160- ``` yaml
161- config :
162- tokenSalt : " .................................." # 64 hex chars
163- oauth :
164- issuerUrl : https://keycloak_or_whatever/realms/your-realm
165- frontend :
166- appName : " Your App Name"
167- oidcAuthority : https://keycloak_or_whatever/realms/your-realm
168- oidcClientId : your-client-id
169- ` ` `
170-
171- ` ` ` bash
172- helm install rvfa ./charts/rusty-valkey-forward-auth -f values.example.yaml
173- ```
174-
175- See [ charts/rusty-valkey-forward-auth/] ( charts/rusty-valkey-forward-auth/ ) for full Helm configuration.
176-
177- ## Traefik Integration
178-
179- Configure Traefik to use this service for forward authentication:
180-
181- ``` yaml
182- http :
183- middlewares :
184- rusty-valkey-auth :
185- forwardAuth :
186- address : " http://rusty-valkey-forward-auth:8080/forward-auth"
187- ` ` `
188-
189182# # Endpoints
190183
191184- ` /` - Frontend UI (OAuth2 secured)
0 commit comments