No description
  • JavaScript 99.3%
  • Dockerfile 0.7%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2025-03-31 09:26:43 -04:00
.idea Add coderabbit.yml and refine project configurations 2025-03-30 21:29:16 -07:00
docker Improve JWT Creation and stuff 2025-03-31 09:26:43 -04:00
family/noona-warden/settings Refactor Docker workflows and update configuration templates 2025-03-30 15:17:26 -07:00
noona Improve JWT Creation and stuff 2025-03-31 09:26:43 -04:00
.dockerignore moved .env to settting folder and named config.env 2025-03-25 13:51:56 -07:00
.gitignore store portal/vault/dbs as a docker volume instead of bound folders 2025-03-27 13:57:05 -04:00
coderabbit.yml Add coderabbit.yml and update project configurations 2025-03-30 17:52:28 -07:00
docker-compose.yml store portal/vault/dbs as a docker volume instead of bound folders 2025-03-27 13:57:05 -04:00
Dockerfile Key gen logic working and saving 2025-03-24 21:16:49 -07:00
initmain.mjs Improve JWT Creation and stuff 2025-03-31 09:26:43 -04:00
LICENSE Initial commit 2025-03-16 11:07:18 -07:00
package-lock.json Improve JWT Creation and stuff 2025-03-31 09:26:43 -04:00
package.json Improve JWT Creation and stuff 2025-03-31 09:26:43 -04:00
readme.md Create readme.md 2025-03-21 05:47:40 -07:00

Noona-Warden

Noona-Warden is the master service manager of The Noona Project. It hooks into the Docker socket to monitor and control other services (like noona-vault and noona-portal), and manages secure internal authentication via daily-rotated JWT tokens.


Features

  • Secure internal JWT token generation
  • Daily secret rotation using date + salt
  • Publishes secrets to Redis for verification
  • Controls Docker containers via dockerode
  • Health checks and auto-start for other Noona services
  • Can be expanded with update-checking, image pulling, and more

Token Architecture

Warden generates and signs JWT tokens each day. These tokens are used internally for inter-service authentication.

See jwt-architecture.md for more details.


Redis Usage

Key Purpose
noona:warden:jwt-secret Stores daily secret for token verification
noona:auth:latest-token (optional) Signed JWT to share with services
noona:services:<name>:status (optional) Tracks container health or status

Docker Setup

Make sure to mount the Docker socket:

volumes:
  - /var/run/docker.sock:/var/run/docker.sock