generated from thegrind/laravel-dockerized
4.2 KiB
4.2 KiB
Quick Start
This guide will get you up and running with AuthentiKate in under 5 minutes.
Prerequisites
- Docker installed on your system
- A domain name (optional, can use localhost for testing)
Step 1: Deploy AuthentiKate
Run the following command to start AuthentiKate:
docker run -d \
--name authentikate \
-p 8080:8080 \
-e APP_URL=http://localhost:8080 \
-v authentikate_data:/var/www/html/storage \
authentikate/authentikate:latest
Step 2: Get Your Admin Credentials
AuthentiKate automatically creates an admin user on first run. Get the credentials from the logs:
docker logs authentikate
Look for output like:
✅ Initial admin user created:
Email: admin@authentikate.local
Password: Xy9#mK2$vB8nQ4!p
Step 3: Access the Interface
- Open your browser and go to
http://localhost:8080
- Log in with the admin credentials from Step 2
- You'll be taken to the AuthentiKate dashboard
Step 4: Create Your First Application
-
Click "Applications" in the navigation
-
Click "Create Application"
-
Fill in the details:
- Name:
Test App
- Redirect URI:
http://localhost:3000/auth/callback
- Client ID: (auto-generated)
- Client Secret: (auto-generated)
- Name:
-
Click "Save"
Step 5: Test the Integration
Your application is now configured! Here are the OIDC endpoints you'll need:
- Authorization:
http://localhost:8080/oauth/authorize
- Token:
http://localhost:8080/oauth/token
- User Info:
http://localhost:8080/oauth/userinfo
- JWKS:
http://localhost:8080/.well-known/jwks.json
- Discovery:
http://localhost:8080/.well-known/openid_configuration
Common Integration Examples
Test with curl
# Get authorization URL (replace CLIENT_ID with your actual client ID)
CLIENT_ID="your-client-id"
REDIRECT_URI="http://localhost:3000/auth/callback"
echo "Visit this URL to authorize:"
echo "http://localhost:8080/oauth/authorize?client_id=${CLIENT_ID}&redirect_uri=${REDIRECT_URI}&response_type=code&scope=openid profile email"
Simple HTML Test Page
Create a simple test page to try the OAuth flow:
<!DOCTYPE html>
<html>
<head>
<title>AuthentiKate Test</title>
</head>
<body>
<h1>AuthentiKate OAuth Test</h1>
<button onclick="authenticate()">Login with AuthentiKate</button>
<script>
function authenticate() {
const clientId = 'your-client-id'; // Replace with your actual client ID
const redirectUri = 'http://localhost:3000/auth/callback';
const authUrl = `http://localhost:8080/oauth/authorize?client_id=${clientId}&redirect_uri=${redirectUri}&response_type=code&scope=openid profile email`;
window.location.href = authUrl;
}
</script>
</body>
</html>
What's Next?
Now that you have AuthentiKate running:
Configure Your Environment
Add Real Applications
Manage Users
Production Setup
Troubleshooting
Can't access AuthentiKate?
- Make sure the container is running:
docker ps
- Check the logs:
docker logs authentikate
- Verify the port is accessible:
curl http://localhost:8080
Forgot admin password?
Reset it by running:
docker exec -it authentikate php artisan app:create-initial-admin --force
Need to change the URL?
Update the APP_URL
environment variable and restart:
docker stop authentikate
docker rm authentikate
# Run again with new APP_URL
Container won't start?
Check for port conflicts:
# See what's using port 8080
sudo netstat -tulpn | grep 8080
# Use a different port
docker run -d --name authentikate -p 8081:8080 ...