Skip to main content

Introduction & Context

What are Frappe deployment packages?

Frappe deployment packages are OS-level packaged builds that install all production dependencies required to run Frappe Framework v15 and ERPNext reliably on servers. These packages simplify deployment by avoiding manual dependency resolution.
They are designed for production environments, not development systems.

Why Use Deployment Packages in Frappe v15?

Deployment packages are recommended when you want:

  • Predictable production behavior
  • Faster server provisioning
  • OS-level dependency stability
  • Reduced configuration errors

Unlike development installs, deployment packages enforce tested dependency versions, ensuring long-term reliability.

Supported Operating Systems (Frappe v15)

Frappe Framework v15 officially supports deployment packages on:

OS Version
Ubuntu 20.04 LTS
Ubuntu 22.04 LTS

Other distributions are not officially supported for package-based deployment in v15.

What Do Frappe Deployment Packages Include?

Frappe deployment packages install and configure:

  • Python runtime (tested version)
  • Node.js (supported LTS)
  • Redis (cache & queue)
  • MariaDB client libraries
  • wkhtmltopdf (PDF generation)
  • Supervisor
  • Nginx

These components are aligned with Frappe v15 compatibility requirements.

How Frappe Deployment Packages Work

High-level flow:

  1. Add Frappe APT repository
  2. Install frappe-bench package
  3. Initialize bench in production mode
  4. Create and configure sites
  5. Enable production services

This approach eliminates the need to manually install Python, Node, Redis, and PDF tools.

Installation Overview (Conceptual)

Exact commands are intentionally excluded here to avoid unsafe copy-paste. Always follow official instructions.

General steps:

  • Configure system repositories
  • Install Frappe deployment package
  • Initialize bench
  • Set up production services

This ensures your ERPNext stack follows officially tested paths.

Production vs Development Installation

Area Development Install Deployment Packages
Use Case Local dev / testing Production
Dependency Control Manual Managed
Stability Medium High
OS Flexibility High Limited
Upgrade Safety Lower Higher

Recommendation:

Use deployment packages only for production servers.

Configuration & Setup Considerations

When using deployment packages, you must:

  • Run bench in production mode
  • Use system services (Supervisor, Nginx)
  • Avoid installing Node/Python manually
  • Follow Frappe upgrade paths strictly

These constraints are intentional to preserve system stability.

Best Practices for Frappe v15 Deployment

  • Always deploy on clean servers
  • Avoid mixing development tools with production packages
  • Use separate staging and production environments
  • Backup MariaDB and site files before upgrades
  • Monitor Redis and background workers

Common Pitfalls & Troubleshooting

Installing Node or Python manually

Deployment packages already manage compatible versions.

Using unsupported Ubuntu versions

Only 20.04 / 22.04 are tested.

Mixing Docker and package installs

Choose one deployment strategy only.

Advanced Topic: When NOT to Use Deployment Packages

Avoid deployment packages if:

  • You require containerized infrastructure (Docker/Kubernetes)
  • You run non-Ubuntu OS
  • You need custom runtime versions

In these cases, manual or container-based deployment is preferred.

Target Audience

  • ERPNext implementation partners
  • DevOps engineers
  • System administrators
  • SaaS providers using Frappe v15

Technical Prerequisites

  • Linux server (Ubuntu LTS)
  • Root or sudo access
  • Basic Linux administration knowledge
  • Understanding of production ERP environments

Summary

Frappe Framework v15 deployment packages provide a safe, stable, and officially supported way to run ERPNext in production. They eliminate dependency chaos and enforce best practices—making them ideal for enterprises and ERP solution providers.
For production ERPNext systems, deployment packages are the recommended path.

Rating: 5 / 5 (2 votes)