Deployment¶
This guide covers different installation methods for USSO.
Docker Deployment (Recommended)¶
The easiest way to run USSO is using Docker Compose.
Prerequisites¶
- Docker 20.10+ and Docker Compose V2
Steps¶
- Clone the repository
- Configure environment
Edit .env file:
# Required
PROJECT_NAME=usso
DOMAIN=localhost
MONGO_URI=mongodb://mongo:27017/usso
REDIS_URI=redis://redis:6379/0
SYSTEM_PASSWORD=your-secure-password
# Optional: Email
SMTP_HOST=smtp.gmail.com
SMTP_PORT=587
SMTP_USERNAME=[email protected]
SMTP_PASSWORD=your-app-password
SMTP_SENDER=[email protected]
- Start services
- Verify installation
-
Access the API
-
API:
http://localhost:8000/api/sso/v1 - Docs:
http://localhost:8000/api/sso/v1/docs
Manual Installation¶
For development or if you prefer not to use Docker:
Prerequisites¶
- Python 3.10 or higher
- MongoDB 4.4+
- Redis 6.0+
- pip and virtualenv
Steps¶
- Clone repository
- Create virtual environment
- Install dependencies
- Configure environment
- Start MongoDB and Redis
Using system services or Docker:
# MongoDB
docker run -d -p 27017:27017 --name mongo mongo:latest
# Redis
docker run -d -p 6379:6379 --name redis redis:latest
- Run USSO
Production Deployment¶
For production, see our Production Setup Guide.
Troubleshooting¶
Port Already in Use¶
If port 8000 is busy:
MongoDB Connection Failed¶
Check MongoDB is running:
Permission Denied¶
On Linux, you may need to run with sudo or add your user to docker group: