🚀 Getting Started
🐳 Docker-Based Local Setup (Recommended for Testing)
- MongoDB
- Redis
- go-iam (backend)
- go-iam-ui (admin frontend)
Steps
Bash
git clone https://github.com/melvinodsa/go-iam-docker.git
cd go-iam-docker
cp sample.env .env
docker compose up -d
Access
- Admin UI: http://localhost:4173
- API: http://localhost:3000
- API Docs: http://localhost:3000/docs
📦 Environment Variables
Variable | Description |
---|---|
`LOGGER_LEVEL` | Logger level `1 - Debug` (refer., `https://docs.gofiber.io/api/log/`) |
`DB_HOST` | MongoDB URI (e.g., `mongodb://user:pass@host/db`) |
`JWT_SECRET` | Secret key used for generating and verifying JWT tokens |
`REDIS_HOST`, `REDIS_PASSWORD`, `ENABLE_REDIS` | Redis host address and toggle to enable Redis caching |
`ENCRYPTER_KEY` | Optional symmetric key for encrypting sensitive fields - change this |
`AUTH_PROVIDER_REFETCH_INTERVAL_IN_MINUTES` | Interval in minutes to refetch and sync third-party auth providers |
`TOKEN_CACHE_TTL_IN_MINUTES` | Interval for which the authentication token should be valid |