Zammad - Web based open source helpdesk/customer support system
Zammad is a web-based, open source user support/ticketing solution with many features to manage customer communication via several channels like telephone, facebook, twitter, chat and emails.
Features
- Multi-channel support: Handle tickets from email, phone, chat, Twitter, Facebook, and more
- Knowledge base: Create and manage a self-service knowledge base
- Reporting & Analytics: Comprehensive reporting and analytics
- Automation: Powerful automation and workflow capabilities
- Mobile ready: Responsive design works on all devices
- Multi-language: Available in multiple languages
Usage
After deployment, you can access Zammad through the provided domain. The system will guide you through the initial setup process.
Default Configuration
- PostgreSQL database for data storage
- Redis for session storage and background jobs
- Memcached for caching
- Elasticsearch for advanced search capabilities
- Automatic backups configured
Services
This Zammad instance includes:
- Web Interface (Nginx) - Main web interface
- Application Server (Rails) - Core application logic
- WebSocket Server - Real-time communication
- Scheduler - Background job processing
- Database (PostgreSQL) - Data storage
- Cache (Redis + Memcached) - Performance optimization
- Search (Elasticsearch) - Advanced search functionality
- Backup Service - Automated backup system
Important Notes
Manual Setup Guide for Self-hosting Zammad on Zeabur
Step 1: Get Containers’ IP
- Navigate to the
zammad-nginx
service.
- Open the command line and run the following commands to get the IP addresses:
getent hosts zammad-railsserver.zeabur.internal
getent hosts zammad-websocket.zeabur.internal
- You will get results like:
- zammad-railsserver: 10.100.29.216
- zammad-websocket: 10.100.68.147
- Copy these IPs for later use.
Step 2: Change the Environment Variables
- Go to the
zammad-nginx
service.
- Update the following environment variables with the IPs you just found:
- ZAMMAD_RAILSSERVER_HOST → 10.100.29.216
- ZAMMAD_WEBSOCKET_HOST → 10.100.68.147
- Restart the
zammad-nginx
service.
- Ready to explore!
(Optional) Step 3: Suspend zammad-init
Service
zammad-init
is a one-time initialization service. It will crash after a few retries, which is normal.
- You can manually suspend
zammad-init
to avoid receiving crash notifications.
Entry point: The entry point for accessing Zammad is the zammad-nginx
service.
- The system requires an initial setup wizard to be completed
- All services are automatically configured and connected
- Elasticsearch provides advanced search capabilities but can be resource intensive
- Regular backups are automatically configured
Configuration
Most configuration is handled automatically, but you can customize:
- Time zone settings
- Email configuration (SMTP)
- External authentication providers
- Advanced Elasticsearch settings
For more information, visit the official Zammad documentation.