Backing Up Database & Files

Installing Orangescrum is only the first step — maintaining it effectively is what ensures consistent uptime, performance, and data integrity.

Regular backups, version upgrades, log management, and scalability planning form the foundation of long-term success for self-hosted deployments.

This section covers essential post-deployment practices to keep your Orangescrum instance secure, optimized, and future-ready.

Astrong backup strategy protects your organization from accidental data loss, hardware failure, or human error.
Orangescrum stores its data in two key locations:

  • The database (MySQL or PostgreSQL)
  • The application file system (uploads, attachments, logs, configuration files)

Step 1: Database Backup

For MySQL / MariaDB:

mysqldump -u root -p yourorganization> /backup/yourorganization_$(date +%F).sql

For PostgreSQL:

pg_dump -U postgres yourorganization > /backup/yourorganization_$(date +%F).sql

Step 2: File Backup

Backup your application and uploaded assets:

tar -czvf /backup/os_files_$(date +%F).tar.gz /var/www/yourorganization/app/webroot/uploads

Step 3: Automate with Cron

Create a daily automated backup job:

crontab -e

Add:

0 2 * * * /usr/bin/mysqldump -u root -p’yourpassword’ yourorganization> /backup/yourorganization_$(date +\%F).sql

Recommended Frequency:

  • Database Backups: Daily
  • File Backups: Weekly
  • Retention: Keep 7 daily + 4 weekly copies

Maintenance

Maintenance, Upgrades & Backup

Installing Orangescrum is only the first step — maintaining it effectively is what ensures consistent uptime, performance, and data integrity.

Regular backups, version upgrades, log management, and scalability planning form the foundation of long-term success for self-hosted deployments.

This section covers essential post-deployment practices to keep your Orangescrum instance secure, optimized, and future-ready.

High Availability & Cluster Setup

For mission-critical deployments, you can design Orangescrum for high availability and load balancing.

Recommended Architecture

  • Load Balancer (HAProxy / Nginx): Routes traffic across app nodes
  • App Nodes (x2 or x3): Running Orangescrum containers or services
  • Database Cluster: MySQL replication or PostgreSQL streaming replication
  • Shared Storage: NFS or GlusterFS for file attachments
  • Monitoring: Prometheus + Grafana for performance tracking

Scaling Options

  • Vertical Scaling: Increase CPU/RAM on a single server
  • Horizontal Scaling: Add more app containers or nodes
  • Stateless Containers: Mount /uploads and /logs to shared persistent storage

Tip: Always maintain synchronized backups and a dedicated staging environment before performing upgrades.

Summary

Whether you choose Docker, Compose, Kubernetes, or Manual installation, Orangescrum gives you the flexibility to deploy on your terms.

  • Docker: Fast and self-contained
  • Compose: Modular and scalable
  • Kubernetes: Enterprise-grade automation
  • Manual: Maximum control and customization

Once the installation is complete, the next step is to configure your workspace — setting up admin credentials, email, storage, and SSL, which we’ll cover in Section 4: Post-Install Configuration.

Kubernetes/Helm Chart Deployment

For enterprise environments using Kubernetes (K8s), Orangescrum can be deployed as a microservice cluster. This provides auto-scaling, high availability, and rolling updates.

Step 1: Prepare Cluster

  • Minimum: 3 worker nodes (8 CPU, 16 GB RAM each)
  • Install kubectl, Helm, and configure access to your cluster.

Step 2: Create Namespace

kubectl create namespace yourname

Step 3: Configure Values File

Your values.yaml defines container images, storage, and environment variables:

app:  image: yourorganization:latest  replicas: 2  env:

    – name: DB_HOST

      value: hostname-db

    – name: DB_NAME

      value: Yourdomainname

    – name: DB_USER

      value: yourusername

    – name: DB_PASS

      value: yourpassword

db:

  image: mysql:8

  persistence:

    size: 20Gi

ingress:

  enabled: true

  hosts:

    – host: orangescrum.yourdomain.com

      paths:

        – /

Step 4: Deploy via Helm

helm install yourorganization ./helm-chart -n yourorganization
Step 5: Verify Pods
kubectl get pods -n yourorganization
Use Case: Recommended for DevOps teams running Orangescrum across multiple clusters or integrating with CI/CD pipelines.

Docker Compose

Docker Compose (Multi-Container Setup)

For production environments, you can split services into multiple containers — typically App, Database, and Reverse Proxy (Nginx/Apache).

Typical Directory Structure

/yourOraganization/├── docker-compose.yml├── app/

├── db/

└── nginx/

/yourOraganization/

├── docker-compose.yml

├── app/

├── db/

└── nginx/

Sample docker-compose.yml

version: ‘3.8’

services:

  app:

    image: yourorganization:latest

    ports:

      – “8080:80”

    depends_on:

      – db

    environment:

      – DB_HOST=db

      – DB_USER=root

      – DB_PASS=password

    volumes:

      – ./app/uploads:/var/www/html/app/webroot/uploads

  db:

    image: mysql:8.0

    restart: always

    environment:

      MYSQL_ROOT_PASSWORD: password

      MYSQL_DATABASE: database

    volumes:

      – ./db/data:/var/lib/mysql

  nginx:

    image: nginx:latest

    ports:

      – “80:80”

      – “443:443”

    volumes:

      – ./nginx/conf:/etc/nginx/conf.d

Launch Stack

docker-compose up -d

Verify Services

docker ps

Best For: Mid to large teams needing modular scaling, independent updates, and separate storage volumes.

Docker (Single-Container Setup)

This is the fastest and most convenient way to get Orangescrum up and running. It bundles the entire application — backend, database, and frontend — into a single portable image.

Step 1: Verify Docker Installation

Ensure Docker is installed on your system:

docker –version

If not installed, follow the official Docker installation guide.

Step 2: Clean Existing Containers and Images

Before loading a new image, remove any existing Orangescrum containers or images:

sudo docker rm $(docker ps -a -q –filter “name=^durango”)
sudo docker rmi $(docker images –filter=reference=”durango*”)

Step 3: Load the Docker Image

Extract the .zip file shared by the Orangescrum team:

unzip orangescrum.zip
cd orangescrum
docker load -i os_durango.tar

This loads the Orangescrum image into Docker.

Step 4: Run the Container

Use Docker Compose to start the container:

docker compose up -d –build
  • -d: Runs in detached mode
  • –build: Rebuilds the image if changes exist

Once up, access Orangescrum at:

http://localhost:8080

Step 5: Complete Installation Wizard

Follow the on-screen steps to:

  • Create the database (MySQL/MariaDB)
  • Configure SMTP settings
  • Set up Admin credentials

Example database credentials (default values):

Database Host: yourhostname

Database User: yourusername

Database Password: yourpassword

Database Name: yourdatabase

Click “Finish Installation” to complete setup.

Result: You now have a working single-container Orangescrum environment — ideal for development, trials, and small internal teams