Skip to content

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

    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 configuration
    ENV OTOBO_WEB_HTTP_PORT=80
    ENV OTOBO_WEB_ROOT_PATH=/
    # Database configuration via environment
    ENV 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 80

    Create 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:

    • Select HTTP as the traffic type
    • Set the internal port to 80

    Set Environment Variables

    Configure the following environment variables:

    VariableValue
    DB_HOSTYour database host
    DB_PORT3306 for MySQL or 5432 for PostgreSQL
    DB_NAMEotobo
    DB_USERDatabase username
    DB_PASSWORDDatabase password
    OTOBO_ROOT_PASSWORDAdmin password

    Attach Persistent Volumes

    Add persistent storage:

    Mount PathRecommended SizePurpose
    /opt/otobo20 GBOTOBO installation
    /opt/otobo/var/article50 GBTicket attachments
    /opt/otobo/var/log5 GBLog files

    Deploy Your Application

    Click Deploy to start the build process.

    Complete Web Installer

    Access OTOBO and complete setup:

    1. Navigate to https://your-app.klutch.sh/otobo/installer.pl
    2. Follow the installation wizard
    3. Configure database connection
    4. Create admin account

Initial Configuration

System Configuration

After installation, configure core settings:

  1. Log in as admin
  2. Navigate to Admin > System Configuration
  3. Configure organization details
  4. Set default queue and ticket settings

Email Configuration

Set up email integration:

  1. Go to Admin > PostMaster Mail Accounts
  2. Configure incoming mail accounts
  3. Set up outgoing SMTP settings
  4. Configure email templates

Queue Setup

Organize ticket routing:

  1. Navigate to Admin > Queues
  2. Create department queues
  3. Set up queue permissions
  4. Configure auto-responses

Managing Tickets

Creating Tickets

Staff can create tickets:

  1. Click New Phone/Email Ticket
  2. Enter customer information
  3. Add ticket details
  4. Assign queue and priority

Ticket Workflow

Process tickets efficiently:

  1. View pending tickets in queue
  2. Take ownership of tickets
  3. Add notes and updates
  4. Move between queues as needed
  5. Close resolved tickets

Customer Portal

Enable self-service:

  1. Customers access the portal
  2. View their open tickets
  3. Create new support requests
  4. Track ticket status

SLA Configuration

Creating SLAs

Set service expectations:

  1. Navigate to Admin > SLAs
  2. Define SLA name and calendar
  3. Set response and solution times
  4. Assign to services

Escalation Rules

Configure escalations:

  1. Define escalation times
  2. Set notification recipients
  3. Configure escalation actions
  4. 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.