Open the server Apps tab
Select your VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.


Open-source identity and access management
Add your server credentials to Server Compass
Choose from our template library
Fill in settings and click Deploy
Use the Keycloak template in Server Compass to deploy a self-hosted identity and access management server with Postgres on your VPS, then verify the Keycloak web UI in a browser.
Select your VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Use the template picker search to find Keycloak in the Server Compass template catalog.

Choose the Keycloak template. Server Compass fills the Keycloak web service, bootstrap admin username, bootstrap admin password, and Postgres password.

Confirm the app name and compose services. In this run, the app was named keycloak-demo and used host port 3001.

Review the generated environment values, confirm the port is available, and click Deploy Now.

Keep the deployment modal open while Server Compass uploads the compose file, pulls the Keycloak image, starts the container, and verifies the stack.

After deployment finishes, return to the Apps tab and confirm the Keycloak app is marked Running with its application URL available.

Open the application URL in a browser. The Keycloak web UI confirms the stack is reachable.

It deploys Keycloak with a Postgres database service.
The tutorial verified Keycloak on host port 3001, which maps to the Keycloak web service on container port 8080.
The tutorial verifies the clean Keycloak web UI because realms, clients, users, and identity providers depend on the production server.
No. The deployment guide should live on the Keycloak template detail page and be linked from the reusable template deployment docs page.
Take the DIY route and deploy Keycloak on your own server using Docker.
Use your terminal to securely access your server. You'll need your server's IP address.
# Connect via SSH
ssh root@your-vps-ip
# Alternative with key file
ssh -i /path/to/key root@your-vps-ipFirst time? Make sure Docker is installed on your VPS. Run: curl -fsSL https://get.docker.com | sh
Initialize a project folder on your server.
# Create and navigate to project directory
mkdir -p ~/apps/keycloak
cd ~/apps/keycloakUse this Docker Compose configuration for your deployment:
services:
keycloak:
image: quay.io/keycloak/keycloak:latest
ports:
- "8080:8080"
environment:
- KC_BOOTSTRAP_ADMIN_USERNAME=admin
- KC_BOOTSTRAP_ADMIN_PASSWORD=<your-admin-password>
- KC_DB=postgres
- KC_DB_URL=jdbc:postgresql://db:5432/keycloak
- KC_DB_USERNAME=keycloak
- KC_DB_PASSWORD=<your-db-password>
command: start-dev
restart: unless-stopped
depends_on:
db:
condition: service_healthy
db:
image: postgres:16-alpine
environment:
- POSTGRES_USER=keycloak
- POSTGRES_PASSWORD=<your-db-password>
- POSTGRES_DB=keycloak
volumes:
- postgres_data:/var/lib/postgresql/data
restart: unless-stopped
healthcheck:
test: ["CMD-SHELL", "pg_isready -U keycloak"]
interval: 10s
timeout: 5s
retries: 5
volumes:
postgres_data:
PORTHost port(default: 8080)ADMIN_USERAdmin user(default: admin)ADMIN_PASSWORDAdmin passwordDB_PASSWORDDB passwordBring up your containers in detached mode.
# Start all services
docker compose up -d
# List running containers
docker compose ps
# Watch the logs
docker compose logs -fAllow the application port through your server's firewall.
# Allow the application port through firewall
sudo ufw allow 8080/tcp
sudo ufw reload
# Access your app at:
# http://your-server-ip:8080Forget SSH and YAML files. Deploy Keycloak visually with Server Compass in just a few clicks.
After deploying Keycloak with Server Compass, complete these steps to finish setup
Log in to admin console
Create realms and clients
Need help? Check out our documentation for detailed guides.
Common questions about self-hosting Keycloak
Simply download Server Compass, connect to your VPS, and select Keycloak from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.
Keycloak requires a minimum of 1024MB RAM. We recommend a VPS with at least 2048MB RAM for optimal performance. Any modern Linux server with Docker support will work.
Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard Keycloak backup and restore procedures.
Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest Keycloak image will be pulled and deployed with zero downtime.
Keycloak is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.

Open-source backend in a single file with realtime database, auth, and file storage

Open-source backend-as-a-service - self-hosted Firebase alternative

Open-source backend framework with dashboard

Full Supabase self-hosted with Kong, GoTrue Auth, Realtime, and Studio
Download Server Compass and deploy Keycloak to your VPS in under 3 minutes. No Docker expertise required.
Download Server Compass