Skip to content

Deploying RosarioSIS

Introduction

RosarioSIS is a free, open-source student information system designed for schools of all sizes. From elementary schools to high schools, RosarioSIS provides comprehensive tools for managing student demographics, attendance, grades, scheduling, and reporting.

Key highlights of RosarioSIS:

  • Student Management: Complete student demographic and enrollment tracking
  • Attendance Tracking: Daily and period-based attendance with reporting
  • Gradebook: Full-featured gradebook with multiple grading scales
  • Scheduling: Course scheduling and timetable management
  • Report Cards: Customizable report card generation
  • Discipline Tracking: Incident and behavior management
  • Food Service: Cafeteria management integration
  • Eligibility: Activity eligibility tracking
  • Parent Portal: Parent access to student information
  • Multi-Language: Available in multiple languages
  • Open Source: GPL-2.0 licensed with active development

This guide walks through deploying RosarioSIS on Klutch.sh using Docker for your school or educational institution.

Why Deploy RosarioSIS on Klutch.sh

Deploying RosarioSIS on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically builds and deploys RosarioSIS without complex server configuration.

Persistent Storage: Attach persistent volumes for student records and documents that survive container restarts.

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

Always-On Availability: Your SIS remains accessible 24/7 for teachers, parents, and administrators.

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

Prerequisites

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

Preparing Your Repository

Create a GitHub repository containing your Dockerfile for RosarioSIS deployment.

Repository Structure

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

Creating the Dockerfile

Create a Dockerfile in the root of your repository:

FROM rosariosis/rosariosis:latest
# Set environment variables
ENV ROSARIOSIS_DB_HOST=${ROSARIOSIS_DB_HOST}
ENV ROSARIOSIS_DB_PORT=${ROSARIOSIS_DB_PORT:-5432}
ENV ROSARIOSIS_DB_NAME=${ROSARIOSIS_DB_NAME:-rosariosis}
ENV ROSARIOSIS_DB_USER=${ROSARIOSIS_DB_USER}
ENV ROSARIOSIS_DB_PASSWORD=${ROSARIOSIS_DB_PASSWORD}
ENV ROSARIOSIS_LANG=${ROSARIOSIS_LANG:-en_US}
# Create necessary directories
RUN mkdir -p /var/www/html/files
# Expose the web interface port
EXPOSE 80
# The base image includes the default entrypoint

Environment Variables Reference

VariableRequiredDescription
ROSARIOSIS_DB_HOSTYesPostgreSQL host address
ROSARIOSIS_DB_PORTNoDatabase port (default: 5432)
ROSARIOSIS_DB_NAMENoDatabase name (default: rosariosis)
ROSARIOSIS_DB_USERYesDatabase username
ROSARIOSIS_DB_PASSWORDYesDatabase password
ROSARIOSIS_LANGNoLanguage (default: en_US)

Deploying RosarioSIS 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 “rosariosis” or “school-sis”.

    Create a New App

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

    Configure HTTP Traffic

    In the deployment settings:

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

    Set Environment Variables

    Add the following environment variables:

    VariableValue
    ROSARIOSIS_DB_HOSTYour PostgreSQL host
    ROSARIOSIS_DB_USERYour database user
    ROSARIOSIS_DB_PASSWORDYour database password
    ROSARIOSIS_DB_NAMErosariosis

    Attach Persistent Volumes

    Add the following volume:

    Mount PathRecommended SizePurpose
    /var/www/html/files10 GBUploaded files and documents

    Deploy Your Application

    Click Deploy to start the build process.

    Access RosarioSIS

    Once deployment completes, access RosarioSIS at your app URL. Default credentials:

    • Username: admin
    • Password: admin

    Change these immediately after first login.

Initial Configuration

School Setup

  1. Navigate to School Setup > Schools
  2. Configure your school information
  3. Set up grading periods (marking periods, semesters)
  4. Configure school calendar

User Management

  1. Go to Users > User Accounts
  2. Create administrator accounts
  3. Set up teacher accounts
  4. Configure staff permissions

Student Enrollment

  1. Navigate to Students > Add a Student
  2. Enter student demographic information
  3. Assign to appropriate grade level
  4. Complete enrollment forms

Course Setup

  1. Go to Scheduling > Courses
  2. Create courses and sections
  3. Assign teachers to courses
  4. Set up course schedules

Gradebook Configuration

  1. Navigate to Grades > Gradebook Configuration
  2. Set up grading scales
  3. Configure grade categories
  4. Customize report card templates

Parent/Student Portal

  1. Generate portal login credentials for parents
  2. Parents can view grades, attendance, and schedules
  3. Configure portal access permissions

Additional Resources

Conclusion

Deploying RosarioSIS on Klutch.sh gives your school a comprehensive student information system with automatic builds, persistent storage, and secure HTTPS access. With its complete feature set covering attendance, grades, scheduling, and reporting, RosarioSIS on Klutch.sh provides everything a school needs to manage student information effectively.