Skedler Reports v4 Docker Installation Guide

Modified on Sat, 25 Sep 2021 at 05:22 PM


Skedler v3.x and 4.x is now available in the Docker repository. It simplifies the installation process and shortens the time to get Skedler up and running.


System Requirements

  • Minimum of 4 CPU cores and 8 GB of RAM is recommended for deploying Skedler.
  • Docker version greater than 1.8.0 should be installed.
  • Skedler v3.0 or higher is only supported.

Step-by-Step Instruction

Step 1: Pull Skedler from a Docker Repository

  • Obtaining Skedler for Docker is a simple as issuing a docker pull command.
  • The Docker image for Skedler 3.x can be retrieved with the following command

sudo docker pull skedler/reports:latest

Note: You can retrieve the older versions of Skedler Reports for Docker using tags from here. To pull a particular version, use the following command

sudo docker pull skedler/reports:<tag>

Step 2: Run Skedler as a Container

  • To run skedler image use the following command 

sudo docker run --name skedler -t -d -v skedlerdata:/var/lib/skedler -p skedler/reports /bin/bash

  • To run skedler of a particular version as a container use the following command 

sudo docker run --name skedler -t -d -v skedlerdata:/var/lib/skedler -p skedler/reports:<tag> /bin/bash

Note: skedler_home inside the container is /opt/skedler

Note: is the bind-address in which Skedler runs, 3001 is the Host IP port which Skedler uses and 3000 is the Docker IP port

Step 3: Basic Skedler configurations using reporting.yml

Skedler Reports needs a datastore to store Skedler Reports metadata and history data. By default, Skedler uses Internal Database as a Datastore. Alternatively, you can configure either Elasticsearch or an external “MySQL” or “SQLite” database as a Datastore in reporting.yml.

Configure Skedler configurations like port, Elasticsearch URL and External Database in /opt/skedler/config/reporting.yml. 

To edit the configuration file use the following command

sudo docker exec -it skedler nano  /opt/skedler/config/reporting.yml

Note: For more configuration options kindly refer the article Reporting.yml and ReportEngineOptions Configuration

Note: The following folders are persisted in the mapped volume (ie skedlerdata)

  • Log files -  log_dir: Persist log information in /var/lib/skedler/logs folder.
  • Custom images, images and custom CSS - ui_files_location: Persist UI information in /var/lib/skedler/uifiles folder.
  • Database - Persist Skedler infomations in /var/lib/skedler/skedler.db and /var/lib/skedler/skedlerHistory.db
  • *Reports -  reports_dir: Persist generated report information in /var/lib/skedler/reports folder.

Note: *Report generation path needs to be configured for "Base Folder Directory" as "/var/lib/skedler/reports" in the Skedler configuration page to persist the generated reports.

Step 4: Start Skedler 

    To run skedler as service use the following command

sudo docker exec skedler service skedler start

    To start skedler manually use the following command

sudo docker exec skedler /opt/skedler/bin/skedler

Step 5: Accessing Skedler

  • Skedler can be accessed from the following URL if it is using the port 3001. http://<hostIP>:3001
  • For example, if the HostIP: and Docker IP: respectively. Skedler runs in and you can access skedler using HostIP in the browser.

Step 6: Configure Settings

    When you launch Skedler Reports for the first time, the Configuration page is displayed. To configure Skedler settings refer the How to configure email settings, time zone settings and default logo for reports.

You have now completed the initial settings of Skedler and ready to schedule reports.  

Step 7: License Upgrade

    Activation is required for purchased product license key. In the Community Edition, license activation will be skipped. If you purchase Skedler Reports license, you will receive a license key by email.  Refer to Upgrade License

Next Steps

Was this article helpful?

That’s Great!

Thank you for your feedback

Sorry! We couldn't be helpful

Thank you for your feedback

Let us know how can we improve this article!

Select atleast one of the reasons

Feedback sent

We appreciate your effort and will try to fix the article