Installation & Setup Issues
Setup screen doesn’t appear
Symptoms: Going to/admin redirects to sign-in instead of setup
Causes:
- Superuser already exists (from environment variables or previous setup)
- Volume persisted from previous deployment
Check if environment variables created a user
Check if environment variables created a user
If you set
PALA_SUPERUSER_EMAIL and PALA_SUPERUSER_PASSWORD, a superuser was created automatically. Use those credentials to sign in.Check if volume contains existing data
Check if volume contains existing data
Can’t access after deployment
Symptoms: Browser can’t reach your Pala instance Diagnostics:Container not running
Container not running
Port not accessible
Port not accessible
- Check firewall allows port 8080 (or your configured port)
- Verify port mapping in docker-compose.yml:
- "8080:8080" - Check if another service is using port 8080:
Domain not pointing to server
Domain not pointing to server
- Check DNS settings point to your server IP
- Wait for DNS propagation (up to 48 hours)
- Test with server IP directly:
http://YOUR_IP:8080
Runtime Issues
”No space left on device” error
Cause: Docker volume or host system out of disk space Solutions:Database locked errors
Symptoms: Errors mentioning “database is locked” Cause: Multiple processes trying to write to SQLite simultaneously Solutions:- Ensure only one Pala container is running:
- Restart the container:
- If persists, check for file permissions:
Publishing fails or times out
Symptoms: Publish button hangs or shows error Diagnostics:Compilation errors in blocks
Compilation errors in blocks
Check browser console for JavaScript errors. Fix any Svelte compilation errors in your blocks.
Out of memory
Out of memory
Increase Docker memory limit:
Network timeout
Network timeout
Check if your server can reach external CDNs (for Svelte compiler):
Performance Issues
Slow editor loading
Causes:- Large blocks with heavy dependencies
- Slow network connection
- Server resource constraints
Optimize blocks
Optimize blocks
- Remove unused dependencies
- Split large blocks into smaller ones
- Use lazy loading for images
Enable compression
Enable compression
Configure gzip in your reverse proxy (see Deployment Guide).
Use a CDN
Use a CDN
Point your domain through Cloudflare for caching and compression.
Slow published site
Diagnostics:- Test site speed: https://pagespeed.web.dev/
- Check network waterfall in browser DevTools
- Optimize images (compress, use WebP)
- Minimize JavaScript bundle size
- Enable caching headers in reverse proxy
- Use a CDN
Docker Issues
Image pull fails
Error:Error response from daemon: manifest for ghcr.io/palacms/palacms:latest not found
Solutions:
- Check if you’re spelling the image name correctly
- Check your internet connection
- Try pulling manually:
Permission errors with volume
Error:permission denied when accessing /app/pb_data
Solution:
Container keeps restarting
Diagnostics:- Application crash (check logs)
- Port already in use
- Out of memory
- Volume mount issues
Authentication Issues
Can’t sign in
Symptoms: “Invalid credentials” error Checks:- Verify email/password are correct
- Check if account exists:
- Reset password via PocketBase admin:
- Go to
https://your-domain.com/_/ - Sign in with superuser
- Reset user password
Locked out of admin
Solution: Create new superuser via command line:Migration & Upgrade Issues
Data loss after upgrade
Prevention: Always backup before upgrading:Blocks not working after upgrade
Cause: Svelte version incompatibility Solution:- Check release notes for breaking changes
- Update block code to match new Svelte version
- Re-publish all sites
Network & SSL Issues
SSL certificate errors
Common Causes:Certificate expired
Certificate expired
Certbot should auto-renew. If not:
Mixed content warnings
Mixed content warnings
Ensure all assets load via HTTPS. Check:
- Image URLs in blocks
- External scripts in head/foot HTML
- CSS file references
Certificate not trusted
Certificate not trusted
Make sure you’re using certificates from a trusted CA (Let’s Encrypt, not self-signed).
CORS errors
Symptoms: Browser console shows CORS errors Cause: Accessing Pala from a different domain than configured Solution: EnsurePALA_APP_URL matches the domain you’re accessing from.
Getting Help
If you’re still stuck:- Check the logs:
- Search existing issues:
- Ask for help:
-
File a bug report:
- Include: OS, Docker version, Pala version, full error logs
- Create Issue