安装

系统要求

本指南假设您使用的是个人电脑、VPS 或裸机服务器。您还需要使用 *nix 系统,因此支持任何 Linux 发行版和 macOS。如果您是 Windows 用户,可以在 WSL 中使用 Ubuntu。我们仅正式支持以下发行版。

  1. macOS
  2. Debian / Ubuntu

在此处了解更多关于架构的信息。

前置要求

依赖项 Frappe v14/v15 Frappe v16/develop
MariaDB 10.6.6+ 11.8
Python 3.10+ 3.14
NodeJS 18+ 24
Redis / valkey 6 6+
Yarn 1.12+ 1.22+
pip 20+ 25.3+
  • wkhtmltopdf:0.12.6 版本,带有修补过的 qt – 用于生成 PDF
  • cron:bench 的定时任务 – 自动证书续期、定时备份

macOS

安装 Xcode 工具的命令行版本。

xcode-select --install

安装 Homebrew。它可以让您在 macOS 上轻松安装软件包。

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

(它可能会在最后提示您运行一些额外的命令,这将确保 brew 在您的 PATH 中可用)

安装 wkhtmltopdf

curl -L https://github.com/wkhtmltopdf/packaging/releases/download/0.12.6-2/wkhtmltox-0.12.6-2.macos-cocoa.pkg -O

installer -pkg wkhtmltox-0.12.6-2.macos-cocoa.pkg -target ~

现在,您可以通过运行以下命令轻松安装所需的软件包

brew install git redis [email protected] pkg-config mariadb-connector-c

如果您计划使用 PostgreSQL 而不是 MariaDB,那么您可以包含 postgresql

在此安装过程中,系统会提示您设置 MySQL root 密码。如果没有提示,您需要自行初始化 MySQL 服务器设置。您可以通过运行以下命令来完成:

sudo mariadb-secure-installation

请记住:仅在设置过程中未提示您输入密码时才运行此命令。

然后,继续执行通用步骤

Debian / Ubuntu

您应该运行 Debian 13+ 或 Ubuntu 24.04+,否则某些软件包可能会出现问题。

更新您系统的软件包索引

sudo apt update

安装 gitredismariadb

sudo apt install git redis-server libmariadb-dev mariadb-server mariadb-client pkg-config

在此安装过程中,系统会提示您设置 MySQL root 密码。如果没有提示,您需要自行初始化 MySQL 服务器设置。您可以通过运行以下命令来完成:

sudo mariadb-secure-installation

请记住:仅在设置过程中未提示您输入密码时才运行此命令。

请务必记住此密码,因为稍后会用到它。

安装 wkhtmltopdf

sudo apt install xvfb libfontconfig

从 https://wkhtmltopdf.org/downloads.html 下载并安装 wkhtmltopdf 软件包,然后运行此命令来安装该软件包。

sudo dpkg -i wkhtmltox_file.deb

通用依赖项

安装 nvm、node 和 yarn

我们建议使用 nvm 安装 node

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

nvm 安装完成后,您可能需要关闭终端并打开另一个标签页/窗口,或者 source 您的 shell 的 rc 文件(例如:~/.bashrc~/.zshrc。然后运行以下命令来安装 node。

nvm install 24

通过运行以下命令验证已安装的版本:

$ node -v
v24.12.0

最后,使用 npm 安装 yarn

npm install -g yarn

** 安装 uv 和 python **

我们建议使用 uv 来管理 python

curl -LsSf https://astral.sh/uv/install.sh | sh

uv 安装完成后,您可能需要关闭终端并打开另一个标签页/窗口,或者 source 您的 shell 的 rc 文件(例如:~/.bashrc~/.zshrc。然后运行以下命令来安装 python。

uv python install 3.14 --default

或者,对于版本 15,您可以选择 3.10-3.13 之间的版本。

安装 Bench CLI

通过 pip 安装 bench

uv tool install frappe-bench

通过检查版本来确认 bench 安装成功

bench --version

创建您的第一个 bench。

mkdir ~/frappe
cd ~/frappe
bench init my-bench

恭喜,您已在系统上成功安装了 bench。

先决条件

以下资源列表可帮助您开始使用 Frappe 构建应用程序。

1. Python

Frappe 使用 Python 3 进行服务器端编程。强烈建议您在开始使用 Frappe 框架构建应用程序之前,先学习 Python。

资源:

  1. Codecademy Python 教程
  2. Python 官方教程

2. MariaDB / Postgres

要使用 Frappe 创建数据库驱动的应用程序,您必须了解数据库管理和常见 SQL 查询的基础知识。

资源:

  1. Codecademy SQL 教程
  2. DigitalOcean 提供的 MySQL 基础教程
  3. MariaDB 入门指南

3. HTML / CSS

如果您想使用 Frappe 框架构建用户界面,您需要学习基本的 HTML / CSS 以及 Bootstrap CSS 框架。

资源:

  1. Codecademy HTML/CSS 教程
  2. Bootstrap 入门指南

4. JavaScript / jQuery

要自定义表单并创建交互式用户界面,您必须学习 JavaScript 和 jQuery 库。

资源:

  1. 现代 JavaScript 教程
  2. Codecademy JavaScript 教程
  3. Codecademy jQuery 教程

5. Jinja 模板

要构建 Web 视图和打印模板,您需要学习 Jinja 模板语言。

资源:

  1. Jinja 文档

6. Git / GitHub

学习如何使用 Git 和 GitHub 为开源项目做贡献,这两个强大的工具可以帮助您管理代码并与他人分享。

资源:

  1. Git 基础教程
  2. 如何为开源项目做贡献

如果您对这些工具的基础知识已经熟悉,那么您就可以开始使用 Frappe 框架构建应用程序了。

下一步:创建 Bench

介绍

什么是 Frappe 框架?

Frappe,发音为 fra-pay,是一个全栈、开箱即用的 Web 框架,使用 Python 和 Javascript 编写,并以 MariaDB 作为数据库。它是驱动 ERPNext 的框架,非常通用,可用于构建数据库驱动的应用程序。

为什么选择 Frappe?

Frappe 与其他框架的关键区别在于,元数据也被视为数据。这使得您可以非常轻松地构建前端。我们信奉单体架构,因此 Frappe 几乎包含了构建现代 Web 应用程序所需的一切。它拥有一个功能齐全的管理界面,称为 Desk,可处理表单、导航、列表、菜单、权限、文件附件等众多功能,开箱即用。在此处了解更多信息。

主要特性

  1. 全栈框架:Frappe 涵盖前端和后端开发,允许开发人员使用单一框架构建完整的应用程序。
  2. 内置管理界面:提供预构建、可自定义的管理仪表板,用于管理应用程序数据,减少开发时间和精力。
  3. 基于角色的权限:全面的用户和角色管理系统,用于控制应用程序内的访问和权限。
  4. REST API:为所有模型自动生成 RESTful API,便于与其他系统和服务的集成。
  5. 可自定义的表单和视图:使用服务器端脚本和客户端 JavaScript 进行灵活的表单和视图自定义。
  6. 报表生成器:强大的报表工具,允许用户无需编写任何代码即可创建自定义报表。

安装

在您使用 Frappe 之前,需要先进行安装。我们提供了一份完整的安装指南,涵盖了所有可能性,本指南还将帮助您了解后端技术栈。

学习与社区

  1. Frappe School – 通过维护者或社区提供的各种课程学习 Frappe 框架和 ERPNext
  2. GitHub – 探索源代码、贡献代码,并与 Frappe 社区协作。
  3. 讨论论坛 – 在我们的论坛上与我们不断壮大的社区交流,提问、帮助他人并成为社区的一员。
  4. buildwithhussain.com – 观看 Frappe 框架在实际应用中构建世界级 Web 应用程序的案例。