Skip to content

Deploying Rukovoditel

Introduction

Rukovoditel is a free, open-source project management application that doubles as a no-code database application builder. Its flexible entity system allows you to create custom applications for project management, CRM, inventory tracking, and virtually any data management need without writing code.

Key highlights of Rukovoditel:

  • Custom Entities: Create any data structure without coding
  • Project Management: Built-in project and task management
  • Customizable Fields: 30+ field types for any data need
  • Reporting: Powerful reporting and chart generation
  • Workflows: Automated actions and notifications
  • User Roles: Fine-grained access control
  • Comments and History: Full audit trail
  • Import/Export: CSV import and export
  • Attachments: File management per record
  • Multi-Language: Available in multiple languages
  • Open Source: GPL-3.0 licensed

This guide walks through deploying Rukovoditel on Klutch.sh using Docker for your custom application needs.

Why Deploy Rukovoditel on Klutch.sh

Deploying Rukovoditel on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically builds and deploys Rukovoditel without complex LAMP configuration.

Persistent Storage: Attach persistent volumes for data and uploads that survive container restarts.

HTTPS by Default: Klutch.sh provides automatic SSL for secure access.

Environment Variable Management: Securely store database credentials through Klutch.sh.

Custom Domains: Assign a custom domain for your application.

Prerequisites

Before deploying Rukovoditel on Klutch.sh, ensure you have:

  • A Klutch.sh account
  • A GitHub account with a repository for your Rukovoditel configuration
  • An external MySQL/MariaDB database
  • Basic familiarity with Docker

Preparing Your Repository

Create a GitHub repository containing your Dockerfile for Rukovoditel deployment.

Repository Structure

rukovoditel-deploy/
├── Dockerfile
└── .dockerignore

Creating the Dockerfile

Create a Dockerfile in the root of your repository:

FROM php:8.1-apache
# Install dependencies
RUN apt-get update && apt-get install -y \
libpng-dev \
libjpeg-dev \
libfreetype6-dev \
libzip-dev \
unzip \
&& docker-php-ext-configure gd --with-freetype --with-jpeg \
&& docker-php-ext-install gd mysqli pdo pdo_mysql zip
# Enable Apache modules
RUN a2enmod rewrite
# Download and install Rukovoditel
RUN curl -L https://www.rukovoditel.net/download.php?file=rukovoditel -o /tmp/rukovoditel.zip \
&& unzip /tmp/rukovoditel.zip -d /var/www/html/ \
&& rm /tmp/rukovoditel.zip \
&& chown -R www-data:www-data /var/www/html
# Create upload directories
RUN mkdir -p /var/www/html/uploads \
&& chown -R www-data:www-data /var/www/html/uploads
# Expose the web interface port
EXPOSE 80
# The base image includes the default entrypoint

Environment Variables Reference

VariableRequiredDescription
DB_HOSTYesMySQL/MariaDB host address
DB_NAMEYesDatabase name
DB_USERYesDatabase username
DB_PASSWORDYesDatabase password

Deploying Rukovoditel on Klutch.sh

    Push Your Repository to GitHub

    Commit and push your Dockerfile to GitHub.

    Create a New Project on Klutch.sh

    Navigate to the Klutch.sh dashboard and create a new project with a descriptive name like “rukovoditel”.

    Create a New App

    Within your project, create a new app. Connect your GitHub account and select the repository containing your Rukovoditel Dockerfile.

    Configure HTTP Traffic

    In the deployment settings:

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

    Attach Persistent Volumes

    Add the following volume:

    Mount PathRecommended SizePurpose
    /var/www/html/uploads10 GBFile uploads and attachments

    Deploy Your Application

    Click Deploy to start the build process.

    Access Rukovoditel

    Once deployment completes, access the installation wizard at your app URL.

Initial Configuration

Installation Wizard

  1. Navigate to your Rukovoditel URL
  2. Complete the installation wizard:
    • Enter database connection details
    • Create administrator account
    • Configure basic settings
  3. Remove the install directory after setup

Creating Entities

  1. Go to Configuration > Entities
  2. Click Add Entity
  3. Define fields for your entity
  4. Configure listing and form views

Setting Up Users

  1. Navigate to Configuration > Users
  2. Create user accounts
  3. Assign to user groups with appropriate permissions

Creating Reports

  1. Go to an entity’s records
  2. Click Reports to create custom reports
  3. Configure charts and aggregations

Building Applications

Project Management

  1. Create entities for Projects, Tasks, and Milestones
  2. Set up parent-child relationships
  3. Configure workflows for task status changes

CRM System

  1. Create entities for Contacts, Companies, and Deals
  2. Add custom fields for your sales process
  3. Set up automated reminders and notifications

Inventory Management

  1. Create entities for Products, Categories, and Locations
  2. Track quantities with formula fields
  3. Generate inventory reports

Additional Resources

Conclusion

Deploying Rukovoditel on Klutch.sh gives you a powerful no-code application builder with automatic builds, persistent storage, and secure HTTPS access. Whether building a project management system, CRM, or any custom database application, Rukovoditel on Klutch.sh provides the flexibility to create exactly what you need without writing code.