Deploying OTOBO
Introduction
OTOBO is an open-source ticketing and IT service management system that evolved from the OTRS Community Edition. It provides comprehensive tools for managing customer support requests, IT helpdesk tickets, and service delivery processes with ITIL-compliant workflows.
Built with Perl, OTOBO offers a mature and feature-rich platform used by organizations worldwide to manage their service desks. The system includes workflow automation, SLA management, reporting, and a customer portal for self-service.
Key highlights of OTOBO:
- Ticket Management: Full lifecycle ticket handling with customizable queues
- ITIL Compliance: Built-in support for ITIL processes
- SLA Management: Service level agreements with escalation rules
- Customer Portal: Self-service portal for customers
- Knowledge Base: FAQ and knowledge management system
- Email Integration: Process tickets from email automatically
- Workflow Automation: Customizable business rules and automation
- Reporting: Comprehensive statistics and reporting tools
- Multi-Channel: Support for email, phone, web, and chat
- Asset Management: CMDB for configuration items
- Calendar Integration: Scheduling and resource management
- Open Source: GPL-3.0 license with active development
This guide walks through deploying OTOBO on Klutch.sh using Docker.
Why Deploy OTOBO on Klutch.sh
Deploying OTOBO on Klutch.sh provides several advantages:
Simplified Deployment: Klutch.sh handles the complex OTOBO deployment automatically.
Persistent Storage: Attach persistent volumes for tickets, attachments, and configurations.
HTTPS by Default: Automatic SSL certificates for secure access.
GitHub Integration: Version-controlled deployments through your repository.
Scalable Resources: Allocate CPU and memory based on ticket volume.
Environment Variable Management: Securely store database credentials.
Custom Domains: Use your own domain for your service desk.
Always-On Availability: Your helpdesk remains accessible 24/7.
Prerequisites
Before deploying OTOBO on Klutch.sh, ensure you have:
- A Klutch.sh account
- A GitHub account with a repository for your configuration
- A MySQL/MariaDB or PostgreSQL database
- An SMTP server for email notifications
- (Optional) A custom domain for your OTOBO instance
Understanding OTOBO Architecture
OTOBO consists of several components:
Core Application: Perl-based ticket management engine.
Web Interface: Agent interface for staff and customer portal.
Database Backend: MySQL/MariaDB or PostgreSQL for data storage.
Daemon Process: Background processes for automation and scheduling.
Email Gateway: Processing incoming and outgoing emails.
Deploying OTOBO on Klutch.sh
- Select HTTP as the traffic type
- Set the internal port to 80
- Navigate to
https://your-app.klutch.sh/otobo/installer.pl - Follow the installation wizard
- Configure database connection
- Create admin account
Create Your GitHub Repository
Create a new GitHub repository for your OTOBO deployment configuration.
Create the Dockerfile
Create a Dockerfile in your repository root:
FROM rotheross/otobo:latest
# Environment configurationENV OTOBO_WEB_HTTP_PORT=80ENV OTOBO_WEB_ROOT_PATH=/
# Database configuration via environmentENV OTOBO_DB_HOST=${DB_HOST}ENV OTOBO_DB_PORT=${DB_PORT}ENV OTOBO_DB_NAME=${DB_NAME}ENV OTOBO_DB_USER=${DB_USER}ENV OTOBO_DB_PASSWORD=${DB_PASSWORD}
EXPOSE 80Create a New Project on Klutch.sh
Navigate to the Klutch.sh dashboard and create a new project.
Create a New App
Within your project, create a new app and connect your GitHub repository.
Configure HTTP Traffic
In the deployment settings:
Set Environment Variables
Configure the following environment variables:
| Variable | Value |
|---|---|
DB_HOST | Your database host |
DB_PORT | 3306 for MySQL or 5432 for PostgreSQL |
DB_NAME | otobo |
DB_USER | Database username |
DB_PASSWORD | Database password |
OTOBO_ROOT_PASSWORD | Admin password |
Attach Persistent Volumes
Add persistent storage:
| Mount Path | Recommended Size | Purpose |
|---|---|---|
/opt/otobo | 20 GB | OTOBO installation |
/opt/otobo/var/article | 50 GB | Ticket attachments |
/opt/otobo/var/log | 5 GB | Log files |
Deploy Your Application
Click Deploy to start the build process.
Complete Web Installer
Access OTOBO and complete setup:
Initial Configuration
System Configuration
After installation, configure core settings:
- Log in as admin
- Navigate to Admin > System Configuration
- Configure organization details
- Set default queue and ticket settings
Email Configuration
Set up email integration:
- Go to Admin > PostMaster Mail Accounts
- Configure incoming mail accounts
- Set up outgoing SMTP settings
- Configure email templates
Queue Setup
Organize ticket routing:
- Navigate to Admin > Queues
- Create department queues
- Set up queue permissions
- Configure auto-responses
Managing Tickets
Creating Tickets
Staff can create tickets:
- Click New Phone/Email Ticket
- Enter customer information
- Add ticket details
- Assign queue and priority
Ticket Workflow
Process tickets efficiently:
- View pending tickets in queue
- Take ownership of tickets
- Add notes and updates
- Move between queues as needed
- Close resolved tickets
Customer Portal
Enable self-service:
- Customers access the portal
- View their open tickets
- Create new support requests
- Track ticket status
SLA Configuration
Creating SLAs
Set service expectations:
- Navigate to Admin > SLAs
- Define SLA name and calendar
- Set response and solution times
- Assign to services
Escalation Rules
Configure escalations:
- Define escalation times
- Set notification recipients
- Configure escalation actions
- Monitor SLA compliance
Production Best Practices
Performance Optimization
- Configure appropriate daemon workers
- Enable caching mechanisms
- Optimize database indexes
- Monitor system resources
Security Recommendations
- Change default passwords immediately
- Enable HTTPS only
- Configure role-based access
- Regular security updates
- Enable audit logging
Email Best Practices
- Configure SPF/DKIM for outgoing mail
- Set up proper email queues
- Monitor mail delivery
- Handle bounces appropriately
Troubleshooting Common Issues
Tickets Not Processing
- Check daemon status
- Verify email account configuration
- Review mail logs
- Check queue configuration
Slow Performance
- Monitor database connections
- Check system resources
- Review slow query logs
- Optimize configuration
Email Issues
- Verify SMTP settings
- Check mail server connectivity
- Review postmaster logs
- Test email delivery
Additional Resources
Conclusion
Deploying OTOBO on Klutch.sh provides a professional-grade IT service management system for your organization. With its comprehensive ticketing capabilities, ITIL compliance, and extensive customization options, OTOBO offers everything needed to run an effective service desk while maintaining full control over your infrastructure and data.