This repository provides a Docker Compose setup to run the full Go IAM authentication and authorization platform along with its admin UI and dependencies (MongoDB and Redis). This setup is designed primarily for local development and testing.
✅ Admin UI: go-iam-ui
🐳 Docker Setup: go-iam-docker
🔐 Backend: go-iam
📦 SDK: go-iam-sdk
🚀 Examples: go-iam-examples 💬 Reddit Community: r/GoIAM
| Service | Description |
|---|---|
mongo-go-iam |
MongoDB instance for storing IAM data |
redis-go-iam |
(Optional) Redis instance for caching tokens |
go-iam |
Backend authentication and authorization service (Go) |
go-iam-ui |
Admin UI to manage tenants, roles, users, and resources |
git clone https://github.com/melvinodsa/go-iam-docker.git
cd go-iam-dockerRename the example file or create your own .env
cp sample.env .envUpdate any values as needed. Here's a sample configuration:
SERVER_HOST=127.0.0.1
SERVER_PORT=3000
DEPLOYMENT_ENVIRONMENT=local
DEPLOYMENT_NAME=Go IAM
LOGGER_LEVEL=2
DB_HOST=mongodb://mongo-go-iam
ENCRYPTER_KEY=
REDIS_HOST=redis-go-iam:6379
REDIS_DB=0
REDIS_PASSWORD=
JWT_SECRET=abcd
ENABLE_REDIS=true
TOKEN_CACHE_TTL_IN_MINUTES=1440
AUTH_PROVIDER_REFETCH_INTERVAL_IN_MINUTES=1
VITE_API_SERVER=http://localhost:3000docker compose up -dThis will build the backend (go-iam) and frontend (go-iam-ui) containers, and start MongoDB and Redis.
Once all services are up:
- Admin UI: http://localhost:4173
- API: http://localhost:3000
- API Docs: http://localhost:3000/docs