FerrisKey is designed to be easy to deploy and easy to operate.
Behind the scenes, it runs as a service that your applications can rely on. Once installed, FerrisKey becomes the central identity provider for your ecosystem.
For non-technical users, the important thing to understand is this:
After that, everything is managed from the dashboard.
Before installing FerrisKey, ensure your system meets these minimum requirements:
The fastest way to get FerrisKey running is using Docker Compose:
Create a docker-compose.yml file:
version: '3.8'
services:
db:
image: postgres:17
environment:
POSTGRES_DB: ferriskey
POSTGRES_PASSWORD: ferriskey
POSTGRES_USER: ferriskey
ports:
- 5432:5432
volumes:
- pgdata:/var/lib/postgresql/data
healthcheck:
test:
- CMD-SHELL
- pg_isready
- -U
- ferriskey
- -d
- ferriskey
interval: 10s
retries: 5
start_period: 30s
timeout: 10s
db-migrations:
image: ghcr.io/ferriskey/ferriskey-api:latest
entrypoint:
- sqlx
command:
- migrate
- run
- --source
- /usr/local/src/ferriskey/migrations
environment:
DATABASE_URL: postgresql://ferriskey:ferriskey@db/ferriskey
restart: no
depends_on:
db:
condition: service_healthy
api:
image: ghcr.io/ferriskey/ferriskey-api:latest
environment:
ALLOWED_ORIGINS: http://localhost:5556
WEBAPP_URL: http://localhost:5556
DATABASE_HOST: db
DATABASE_NAME: ferriskey
DATABASE_PASSWORD: ferriskey
DATABASE_USER: ferriskey
ports:
- 3334:3333
depends_on:
db-migrations:
condition: service_completed_successfully
webapp:
image: ghcr.io/ferriskey/ferriskey-webapp:latest
environment:
API_URL: http://localhost:3334
ports:
- 5556:80
depends_on:
- api
volumes:
pgdata:
docker compose up -d
Open your browser and navigate to http://localhost:5556. The FerrisKey web interface will be available for configuration and user management.
The API will be accessible at http://localhost:3334 for direct integration.