Skip to main content

Installing Frappe Learning

Frappe Learning can be deployed either on Frappe Cloud for a fully managed experience or self-hosted on your own infrastructure. Choose the installation method that best fits your requirements.

Installation Options

Available Installation Methods

  • Managed Hosting using Frappe Cloud
  • Production Self-Hosting
  • Docker Development Environment
  • Local Bench Development Setup

Managed Hosting (Frappe Cloud)

The fastest way to start using Frappe Learning is through Frappe Cloud, which handles deployment, updates, backups, SSL certificates, and infrastructure management.

Getting Started

  1. Create a Frappe Cloud account.
  2. Deploy a new Learning instance with a single click.
  3. Your LMS will be ready within a few minutes.

If you already have a Frappe Cloud site, you can install Learning directly from the Frappe Cloud Marketplace.

Recommendation

Frappe Cloud is the recommended deployment option for production environments as it eliminates infrastructure management and provides automatic updates, backups, monitoring, and security.

Self Hosting

Organizations that prefer complete control over their infrastructure can deploy Frappe Learning on their own servers.

Production Installation

The easiest way to deploy a production-ready Learning instance is by using the official installation script.

Step 1 — Download the Installer

wget https://frappe.io/easy-install.py

Step 2 — Deploy Learning

python3 ./easy-install.py deploy \
    --project=learning_prod_setup \
    --email=your_email.example.com \
    --image=ghcr.io/frappe/lms \
    --version=stable \
    --app=lms \
    --sitename subdomain.domain.tld

Required Parameters

  • your_email.example.com — Administrator email address.
  • subdomain.domain.tld — Domain where the Learning instance will be hosted.

The installer automatically provisions a production-ready deployment, including all required services and configurations, typically within five minutes.

Important

If deploying on a public server, ensure your DNS A record points to the server’s IP address. For local deployments, map your domain to 127.0.0.1 in the /etc/hosts file to avoid “404 Page Not Found” errors.

Development Installation

For development and testing, Frappe Learning can be installed using Docker or Bench.

Docker Setup

Prerequisites

  • Docker
  • Docker Compose
  • Git

Step 1 — Download Required Files

mkdir frappe-learning
cd frappe-learning

wget -O docker-compose.yml https://raw.githubusercontent.com/frappe/lms/develop/docker/docker-compose.yml

wget -O init.sh https://raw.githubusercontent.com/frappe/lms/develop/docker/init.sh

Step 2 — Start the Containers

docker compose up -d

Step 3 — Open Learning

After the containers start successfully, open:

http://lms.localhost:8000/lms

Default Login Credentials

Username: Administrator
Password: admin
Security Note

Change the default administrator password immediately after the first login.

Local Development (Bench)

If you are contributing to Frappe Learning or building custom features, you can install it locally using Bench.

Installation Steps

  1. Create a frappe-bench directory by following the Frappe Framework installation guide.
  2. Start the development server using bench start.
  3. Create a new site with bench new-site learning.test.
  4. Map the site locally using bench --site learning.test add-to-hosts.
  5. Download the Learning application using bench get-app https://github.com/frappe/lms.
  6. Install the application using bench --site learning.test install-app lms.
  7. Open http://learning.test:8000/lms in your browser.

Which Installation Method Should You Choose?

Deployment Option Best For
Frappe Cloud Production deployments with managed infrastructure.
Production Self-Hosting Organizations managing their own servers.
Docker Quick local testing and development.
Bench Application development and contributions.
Summary

Frappe Learning offers flexible deployment options ranging from one-click managed hosting on Frappe Cloud to fully self-hosted production installations and local development environments using Docker or Bench. Choose the option that best matches your operational and development requirements.

Rating: 0 / 5 (0 votes)