Getting Help
Before diving into troubleshooting:- Check the Zipline logs for error messages
- Search existing GitHub issues
- Join the Discord server for community support
- Review relevant configuration in this documentation
Checking Logs
Docker Deployment
Source Deployment
Enable Debug Logging
For more detailed logs, set the DEBUG environment variable:Installation & Startup Issues
Zipline exits immediately on startup
Zipline exits immediately on startup
-
Missing CORE_SECRET
Solution: Generate and set CORE_SECRET:
-
Database connection failed
Solution:
- Verify PostgreSQL is running:
docker compose ps - Check DATABASE_URL is correct
- Wait for database to be ready (use healthcheck in docker-compose)
- Verify PostgreSQL is running:
-
S3 access test failed
Solution: Check S3 configuration:
- Verify credentials are correct
- Ensure bucket exists and is accessible
- Check bucket permissions (see S3 Setup)
Cannot connect to database
Cannot connect to database
-
Verify database is running:
-
Check DATABASE_URL format:
-
Check password special characters:
Passwords with special characters may need URL encoding:
-
Wait for database to be ready:
Docker compose should have healthcheck:
Port already in use
Port already in use
-
Change Zipline port:
-
Find and stop process using port:
-
Change Docker port mapping:
Docker compose fails to start
Docker compose fails to start
-
Missing environment variables:
Solution: Create .env file with required variables
-
Invalid docker-compose.yml:
-
Volume permission issues:
Upload Issues
File uploads fail or return errors
File uploads fail or return errors
-
413 Payload Too Large
- File exceeds
FILES_MAX_FILE_SIZElimit - Reverse proxy has lower limit
- File exceeds
-
408 Request Timeout
- Upload taking too long
- Network issues
-
401 Unauthorized
- Invalid or missing API token
- Token revoked or expired
- Generate new token in user settings
- Update ShareX/client configuration
-
Storage write failed
- Disk full (local storage)
- S3 permissions issue
Uploads succeed but files return 404
Uploads succeed but files return 404
-
Files not in correct location:
-
Incorrect datasource configuration:
-
File permissions (local storage):
-
S3 bucket/subdirectory mismatch:
- Verify DATASOURCE_S3_BUCKET matches actual bucket
- Check DATASOURCE_S3_SUBDIRECTORY if used
Chunked/partial uploads fail
Chunked/partial uploads fail
-
Check chunk configuration:
-
Verify temp directory is writable:
- Increase reverse proxy limits: Must accommodate chunk size + overhead
Image compression not working
Image compression not working
-
Feature is enabled:
-
Compression format is set:
-
Check logs for compression errors:
Authentication & Users
Cannot log in / wrong password
Cannot log in / wrong password
-
Reset password via CLI:
-
Verify user exists:
-
Check for special characters in password:
- Avoid special characters that might be interpreted by shell
- Use strong alphanumeric passwords
OAuth login fails
OAuth login fails
-
Redirect URI mismatch:
- OAuth provider redirect URI must match exactly
- Include
https://your-domain.com/api/auth/oauth/<provider>/callback
-
Missing OAuth configuration:
-
OAuth provider credentials invalid:
- Verify client ID and secret are correct
- Check if OAuth app is enabled in provider dashboard
2FA/TOTP not working
2FA/TOTP not working
-
Check TOTP is enabled:
-
Time synchronization:
- TOTP requires accurate system time
- Sync server time:
sudo ntpdate -s time.nist.gov
-
Regenerate TOTP secret:
- Disable and re-enable 2FA in user settings
- Scan new QR code
User registration not working
User registration not working
- If registration is disabled, users need invites
- Generate invite in admin panel
Performance Issues
Slow file uploads/downloads
Slow file uploads/downloads
-
Network bottleneck:
- Check bandwidth between client and server
- Use
iperf3to test network speed
-
Disk I/O bottleneck (local storage):
-
S3 performance:
- Choose region close to users
- Consider CloudFront or CDN
- Check S3 connection pooling is working (max 1000 connections)
-
Reverse proxy not using keep-alive:
High memory usage
High memory usage
-
Limit thumbnail generation threads:
-
Disable metrics if not needed:
-
Reduce chunk size:
-
Monitor with Docker stats:
Database growing too large
Database growing too large
-
Disable metrics collection:
-
Clean old metrics:
-
Vacuum database:
Storage Issues
S3 connection errors
S3 connection errors
-
Connection timeout:
- Check network connectivity to S3 endpoint
- Verify endpoint URL is correct
- Check firewall allows HTTPS to S3
-
Access denied:
- Verify IAM permissions (see S3 Setup)
- Check bucket policy
- Ensure credentials are valid
-
Bucket not found:
- Verify bucket name is correct
- Check region matches bucket region
- For path-style: ensure DATASOURCE_S3_FORCE_PATH_STYLE=true
Local storage disk full
Local storage disk full
-
Check disk usage:
-
Clean up old files:
- Delete expired files manually
- Ensure deletion task is running:
-
Migrate to S3:
- See S3 Setup guide
- Transfer existing files to S3
Thumbnails not generating
Thumbnails not generating
-
Feature is enabled:
-
Thumbnail interval:
-
Check logs for errors:
-
Supported formats:
- Images: JPEG, PNG, WebP, GIF
- Videos: MP4, WebM, MOV (requires ffmpeg)
Reverse Proxy Issues
502 Bad Gateway
502 Bad Gateway
-
Zipline not running:
-
Wrong proxy_pass address:
-
Firewall blocking connection:
Client IP shows as proxy IP
Client IP shows as proxy IP
Infinite redirect loop
Infinite redirect loop
-
Set SSL mode to Full:
- Cloudflare Dashboard → SSL/TLS → Full or Full (strict)
-
Check HTTPS configuration:
-
Verify reverse proxy doesn’t force redirect:
- Remove HTTP to HTTPS redirects if Cloudflare handles it
Miscellaneous
ShareX configuration not working
ShareX configuration not working
Custom domain not working
Custom domain not working
- DNS A/AAAA record points to server
- Domain added to DOMAINS or admin dashboard
- Reverse proxy accepts domain
- SSL certificate covers domain
- CORE_TRUST_PROXY=true if behind proxy
Webhooks not firing
Webhooks not firing
-
Webhook URL is configured:
-
Check logs for webhook errors:
-
Verify webhook endpoint is reachable:
Database migrations fail
Database migrations fail
-
Check database connection:
- Ensure database is accessible
- Verify credentials
-
Manual migration:
-
Reset database (development only):
Getting More Help
If you’re still experiencing issues:-
Gather information:
- Zipline version: Check GitHub release or Docker image tag
- Deployment method: Docker, source, etc.
- Configuration: Relevant environment variables (redact secrets)
- Error logs: Recent error messages
- Steps to reproduce: What triggers the issue
-
Search existing issues:
- GitHub Issues
- Use search with error messages or keywords
-
Ask for help:
- Discord server - Community support
- GitHub Discussions - Questions and ideas
- GitHub Issues - Bug reports
-
Provide context:
Include:
- Description of the issue
- What you’ve already tried
- Relevant configuration (redacted)
- Error logs
- Environment details (OS, Docker version, etc.)
Common Error Messages
| Error Message | Likely Cause | Solution |
|---|---|---|
CORE_SECRET is required | Missing secret | Generate and set CORE_SECRET in .env |
connect ECONNREFUSED | Database not accessible | Check DATABASE_URL and database status |
error while testing write access | S3 permissions issue | Verify S3 credentials and bucket permissions |
listen EADDRINUSE | Port already in use | Change CORE_PORT or stop conflicting process |
Unauthorized | Invalid API token | Generate new token in user settings |
Payload Too Large | File size limit | Increase FILES_MAX_FILE_SIZE and proxy limits |
Migration failed | Database migration issue | Check database connection, run migrations manually |
ENOSPC: no space left | Disk full | Clean up files or increase disk space |