当前位置: 首页 > article >正文

erpnext--指令

1、工作台命令

使用基准 CLI

➜ bench
Usage: bench [OPTIONS] COMMAND [ARGS]...

  Bench manager for Frappe

Options:
  --version
  --help     Show this message and exit.

Commands:
  backup                   Backup single site
  backup-all-sites         Backup all sites in current bench
  config                   Change bench configuration
  disable-production       Disables production environment for the bench.
  download-translations    Download latest translations
  exclude-app              Exclude app from updating
  find                     Finds benches recursively from location
  get-app                  Clone an app from the internet or filesystem and...

同样,可以检查所有可用的标志和选项的命令 通过用标志单独执行它们。的命令 实例:--helpinit

➜ bench init --help
Usage: bench init [OPTIONS] PATH

  Initialize a new bench instance in the specified path

Options:
  --python TEXT                   Path to Python Executable.
  --ignore-exist                  Ignore if Bench instance exists.
  --apps_path TEXT                path to json files with apps to install
                                  after init

命令

在 Click 的结构下,是主命令组,其下有 是目前工作台中的三组主要命令,即bench

常规命令

一组在其他命令中不广泛分类的命令。命令 如 、 属于此类别。这些命令 直接属于基准组,因此可以直接调用它们作为前缀 每个在你的壳里。因此,这些命令的用法为initget-appfindbench

➜ bench COMMAND [ARGS]...

常用

  • init:在指定路径中初始化新的工作台实例。这设置 一个完整的工作台文件夹,其中包含一个包含所有 Frappe 的文件夹 当前工作台中可用的应用程序,存储所有站点数据的文件夹 由单个站点文件夹分隔,包含您的文件夹 redis、NGINX 和主管配置文件。该文件夹包含 当前工作台的所有 python 依赖项和已安装的 Frappe 应用程序有。appssitesconfigenv
  • restart重新启动 Web、管理引擎、systemd 进程单元。用于 生产设置。
  • update:如果在 bench 目录中执行,没有任何标志将备份, 拉动、设置要求、构建、运行补丁和重新启动工作台。用 特定标志只会执行某些任务,而不是全部任务。
  • migrate-env:将虚拟环境迁移到所需的 Python 版本。这 使用指定的 Python 版本重新生成文件夹。env
  • retry-upgrade:重试失败的升级
  • disable-production:禁用工作台的生产环境。
  • renew-lets-encrypt:renew's encrypt site SSL 证书。
  • backup备份单个站点数据。也可用于备份文件。
  • backup-all-sites:备份当前工作台中的所有站点。

  • get-app:从互联网或文件系统下载应用程序并设置 你的bench 。这将克隆 Frappe 项目的 git 存储库并将其安装在 bench 环境。

  • remove-app:从当前完全删除指定的 Frappe 应用程序 工作台和重建资产(如果未安装在任何站点上)。
  • exclude-app:在更新期间排除应用bench update
  • include-app:包含用于更新的应用。所有弗拉佩应用程序都是 安装时默认包含。
  • remote-set-url设置应用远程网址
  • remote-reset-url:将应用程序远程网址重置为冰沙官方网址
  • remote-urls:向应用显示远程网址
  • switch-to-branch:将所有应用切换到指定的分支,或指定应用 用空格分隔
  • switch-to-develop::将 Frappe 和 ERPNext 切换到开发分支

基于高级设置

  • set-nginx-port:为站点设置 NGINX 端口
  • set-ssl-certificate:设置站点的 SSL 证书路径
  • set-ssl-key:设置站点的SSL证书私钥路径
  • set-url-root:为网站设置网址根目录
  • set-mariadb-host:将MariaDB主机设置为bench
  • set-redis-cache-host:为bench设置Redis缓存主机
  • set-redis-queue-host:为工作台设置 Redis 队列主机
  • set-redis-socketio-host:为bench设置Redis socketio主机
  • use:设置工作台的默认站点
  • download-translations:下载最新翻译

发展

  • start:启动 Frappe 开发流程。使用Procfile启动 弗拉佩开发环境。
  • src:打印工作台源文件夹路径,可用于 cd 到 工作台安装存储库由 .cd $(bench src)
  • find:从位置或指定路径递归查找长凳。
  • pip:使用当前工作台的 pip 来管理 Python 包。寻求帮助 关于点子用法:或 .bench pip help [COMMAND]bench pip [COMMAND] -h
  • new-app:在应用文件夹下创建新的 Frappe 应用程序。

释放工作台

  • release:创建 Frappe 应用程序的发布
  • prepare-beta-release:从开发分支准备主要测试版

设置命令

此命令组由用于操作需求和 Frappe 环境所需的环境。用于 在当前替补席的背景下设置 Frappe 环境需要 使用 作为前缀执行。所以,这些的一般用法 命令为bench setup

➜ bench setup COMMAND [ARGS]...
  • sudoers:将命令添加到 sudoers 列表以允许工作台命令 在没有 root 密码的情况下执行

  • env:为您的工作台设置Python的虚拟环境。这会在工作台目录的根目录下设置一个文件夹。env

  • redis:为 Redis 生成配置
  • 字体:将 Frappe 字体添加到系统
  • 配置:生成或覆盖sites/common_site_config.json
  • 备份:为工作台备份添加 cronjob
  • socketio:socketio 服务器的设置节点依赖项
  • 要求:设置 Python 和节点依赖项

  • 经理:使用工作台设置站点 管理器应用程序,用于工作台的GUI 安装在上面。bench-manager.local

  • procfile:为工作台启动生成 procfile

  • 生产:为指定用户设置 Frappe 生产环境。 这将安装ansible,NGINX,supervisor,fail2ban并生成 相应的配置文件。

  • nginx:为 NGINX 生成配置文件
  • fail2ban:设置 fail2ban,一个入侵防御软件框架 保护计算机服务器免受暴力攻击
  • systemd:为 systemd 生成配置
  • 防火墙:为系统设置防火墙
  • ssh 端口:为系统设置 SSH 端口
  • reload-nginx:检查NGINX配置文件并重新加载服务
  • 主管:为主管生成配置
  • lets-encrypt:为站点设置 lets-encrypt SSL
  • 配符 SSL:为多租户工作台设置通配符 SSL 证书

  • 添加域:将自定义域添加到特定网站

  • 删除域:从网站中删除自定义域
  • 同步域:检查域中是否有更改。如果是,则更新 域列表。

  • 角色:通过 ansible 角色安装依赖项

配置命令

config 命令组处理在当前工作台中进行更改(不是 CLI 工具)配置。配置组命令用于操作 当前工作台上下文中的配置。这些命令的用法如下

➜ bench config COMMAND [ARGS]...
  • set-common-config:使用参数 -c 在通用配置中设置值,配置 或 --配置
  • 删除通用配置:从当前工作台的通用中删除特定键 配置
  • update_bench_on_update:在跑步台上启用/禁用工作台更新 更新
  • restart_supervisor_on_update:启用/禁用自动重启 主管流程
  • restart_systemd_on_update:启用/禁用 systemd 的自动重启 单位
  • dns_multitenant:在运行工作台上启用/禁用工作台多租户 更新
  • serve_default_site:将nginx配置为在端口上为默认站点提供服务 80
  • http_timeout:设置 HTTP 超时

安装命令

安装命令组处理用于安装系统的命令 用于设置 Frappe 环境的依赖项。这些命令的用法 是作为

    bench install COMMAND [ARGS]...
  • 先决条件:安装必备库、基本工具,如 b2zip, htop, screen, vim, x11-fonts, python libs, cups and Redis
  • nodejs:安装 Node.js v8
  • nginx:安装 NGINX。如果指定了用户,则为此设置了 sudoers 用户
  • 打包器:安装Oracle virtualbox和打包程序1.2.1
  • psutil:通过 pip 安装 psutil
  • mariadb:安装和设置指定版本和root密码的MariaDB
  • wkhtmltopdf: Installs wkhtmltopdf v0.12.3 for linux
  • 主管:安装主管。如果指定了用户,则设置了 sudoers 对于该用户
  • fail2ban:安装fail2ban,一个入侵防御软件框架 保护计算机服务器免受暴力攻击
  • virtualbox:安装virtualbox

一般用法

本节涵盖了 Bench CLI 的一般用法,足以让您了解 熟悉基本用法。

创建新工作台

init 命令将使用 frappe 框架创建一个 bench 目录 安装。它将设置为定期备份。

➜ bench init frappe-bench && cd frappe-bench

添加网站

Frappe应用程序由frappe网站运行,您必须至少创建一个 网站。新站点命令允许您执行此操作。

➜ bench new-site site1.local

添加应用

get-app 命令从远程 git 存储库获取远程 frappe 应用程序,并且 安装它们。示例:erpnext

➜ bench get-app erpnext https://github.com/frappe/erpnext

安装应用

要在新站点上安装应用程序,请使用 bench 命令。install-app

➜ bench --site site1.local install-app erpnext

起跑台

要开始使用工作台,请使用命令bench start

➜ bench start

要登录到Frappe / ERPNext,请打开浏览器并转到,可能[your-external-ip]:8000localhost:8000

默认用户名为“管理员”,密码是您设置的密码 创建了新站点。

更新工作台

更新工作台目录中的所有应用和网站。此操作执行 备份、设置需求、构建辅助、运行迁移和重新启动您的 流程管理器为您服务。

➜ bench update

更新工作台配置

要更新工作台的通用站点配置,可以使用配置下的 and 命令 命令组。要了解有关可用的 Frappe 站点配置的更多信息, 查看站点配置和工作台配置文档。set-common-configremove-common-config

要添加或更新现有的配置键,您可以运行类似

➜ bench config set-common-config -c enable_frappe_logger true

要删除现有的配置键,您可以运行类似

➜ bench config remove-common-config enable_frappe_logger

bench 经理

有关基于 UI 的部署管理方法,请查看 Bench 经理。

➜ bench setup manager

2

网站创建

在您的工作台上创建一个新网站。默认情况下,在工作台上创建的所有网站 将只在它们上安装 Frappe 框架。

bench new-site {site}

有关更多信息和示例,请参阅工作台 新网站参考。

站点备份

您可以使用工作台 CLI 在工作台的站点上进行备份。您可以 管理站点的数据库和文件备份,并更好地控制 操作。

bench --site {site} backup

工作台 CLI 还会从工作台目录中删除较旧的备份文件。由 默认情况下,它会从备份目录中删除超过 24 小时的备份。

有关更多信息和示例,请参阅工作台 备份引用。

站点还原

基准 CLI 可用于将现有站点还原到以前的状态。使用该命令,可以使用特定数据库还原站点,并且 文件还原。bench restore

bench --site {site} restore {path/to/database/file}

执行还原操作的最低要求是拥有数据库 文件,以您的本地文件系统。指定的备份文件可能具有扩展名。sql.gzsql

有关更多信息和示例,请参阅工作台 恢复引用。

部分站点还原和备份

从版本 13 开始,Frappe 支持进行部分备份和还原 他们。可以直接使用该命令进行部分备份。如 对于部分还原,该命令可用于还原 对现有站点的部分备份。bench backupbench partial-restore

有关更多信息和示例,请参阅工作台 部分恢复和工作台 备份引用。

网站应用管理

您可以安装或卸载工作台上可用的 Frappe 应用程序。要添加 使用结帐将应用程序应用到您的工作台上 文档。bench get-app

应用安装

在您的网站上安装 Frappe 应用程序的最简单方法是通过 bench CLI。但是,该应用程序必须在您的工作台上安装之前 那。

bench --site {site} install-app {app}

在此操作中,应用程序 和 指定的 站点安装在指定的站点上。metamodulesdoctypes

应用卸载

卸载现场安装的应用程序。这是一种破坏性操作,包括 从网站中删除所有与应用相关的数据。因此,在之前进行备份 卸载所述应用程序。

bench --site {site} uninstall-app {app}

注意:从版本 13 开始,即使未安装在 Bench 上的应用程序也可以卸载 从网站。

有关更多信息和示例,请参阅工作台 卸载应用参考。

站点迁移

运行补丁,同步架构并重建文件,翻译和索引 特定站点。在文档中了解网站迁移的工作原理。

bench --site {site} migrate

有关更多信息和示例,请参阅工作台 迁移引用。

网站删除

删除数据库并将站点目录从 移动到工作台上的文件夹(除非另有指定)。./sites./archived_sites

bench drop-site {site}

有关更多信息和示例,请参阅工作台 拖放站点引用。

重置站点数据

从指定站点重新安装所有已安装的应用程序。这完全 重置站点。

bench reinstall {site}

有关更多信息和示例,请参阅工作台 重新安装参考。

列出已安装的应用程序

列出指定站点上安装的所有 Frappe 应用程序。这 命令显示的信息是从已安装的应用程序 DocType 中获取的,该文档类型跟踪站点迁移到的应用程序的最新版本。 全局默认值用作回退。installed_apps

bench --site {site} list-apps

版本 13 中添加了多站点支持。查看所有摘要 站点,运行命令,站点的值为 。all

有关更多信息和示例,请参阅工作台 列表应用参考。

设置默认站点

有时,键入每个站点命令可能很乏味。你 可以通过设置环境变量来设置终端会话的默认站点。--site [sitename]FRAPPE_SITE

~/frappe-bench
❯ export FRAPPE_SITE=mysite.localhost

~/frappe-bench
❯ echo $FRAPPE_SITE
mysite.localhost

~/frappe-bench
❯ bench console
Apps in this namespace:
frappe

In [1]: frappe.local.site
Out[1]: 'mysite.localhost'

在浏览器中访问网站

要在浏览器中访问站点,您必须记住网络服务器端口 哪个工作台正在运行,然后键入完整的 URL。有一个bench 命令 这为你做这件事。

运行以下命令将直接以默认方式打开站点 URL 浏览器。

# open site.local in the browser
$ bench --site site.local browse

# this also works
$ bench browse site.local

您也可以通过传递选项以用户身份登录。--user

$ bench --site site.local browse --user test@example.com

$ bench --site site.local browse --user Administrator
Login URL: http://site.local:8000/app?sid=<generated-sid>

请注意,此命令:

  • 仅当 developer_mode 设置为 1 时,才允许以任何用户身份登录
  • 无论developer_mode如何,都允许以管理员身份登录
  • 仅当用户是管理员时才打印登录 URL

网站运营、调试和开发

以下是您可以通过 Bench CLI 在站点上执行的一些操作,以 更新站点状态。您可能永远不必使用其中一些,但它们存在 以防万一。

  • 添加系统管理器:向站点添加新的系统管理器。
  • 添加用户:将具有特定角色的新用户添加到站点。
  • 添加到主机:将指定的站点添加到系统上的主机文件中。
  • 构建搜索索引:为网站构建搜索索引。参考全文 搜索 API 文档以获取更多信息。
  • 禁用用户:禁用现场用户。
  • 发布实时:从工作台发布实时事件。
  • 重新加载文档:重新加载特定文档类型的架构并刷新 指定文档
  • reload-doctype:重新加载特定 DocType 的架构
  • 已安装的应用程序中删除:从站点中删除提到的应用程序 的全局值。installed_applications
  • run-patch:通过 Frappe Patch 处理程序运行特定补丁。
  • 迁移到:将本地站点迁移到 Frappe 主机的命令 提供商的服务。
  • ngrok:创建一个临时 URL 并与任何人共享,他们可以 在他们的浏览器中访问您的本地网站。主要为帮助 开发第三方服务。
  • 设置密码:为任何用户设置密码
  • 设置管理员密码:设置管理员用户的密码。
  • 为用户设置上次活动日期:将用户上次活动日期设置为当前日期时间。
  • 开始录制:启动指定站点的 Frappe 录制器。
  • 停止录制:终止指定站点的 Frappe 录制器。
  • 使用:设置工作台上的默认站点。将网站条目添加到 .currentsite.txt

数据库维护命令

与数据库管理和维护相关的命令集。这些 命令可以更好地控制站点的数据库。您可能需要微调 随着时间的推移,您的部署以满足站点的需求。

表转换

该命令允许您管理您的设置 站点的表。此时,您可以切换和设置 选择站点数据库上的表。transform-databaseenginerow_format

bench --site {site} transform-database --tables {tables}

有关更多信息和示例,请参阅工作台 转换数据库引用。

表修整

从特定文档类型中删除的文档字段可能不会从其数据库中删除 表。这是设计使然,以防止Frappe中的数据丢失。这不会是 在大多数情况下存在问题,但是,在某些时候您可能会因此而遇到问题 挥之不去的数据。

定期修整表的一些好处是:

  • 更小的备份大小
  • 减少备份站点所需的时间
  • 减少站点数据库的使用量
  • 优化查询,以防SELECT *
  • 数据库是干净的,没有任何隐藏或冗余的数据
bench trim-tables [OPTIONS]

有关更多信息和示例,请参阅工作台 修剪表参考。

数据库修整

从列表视图中删除文档类型可能不会从中删除其相应的表 数据库。迁移有时可能会在站点数据库中留下幻影表。这 可能是为了冗余,以便在数据损坏时进行恢复 或丢失,或简单地在人为错误的情况下丢失。

bench trim-database [OPTIONS]

有关更多信息和示例,请参阅工作台 修剪数据库引用。

调度程序命令

用于管理和查看计划程序和后台作业状态的命令 您长凳上的站点。在模块 下定义。frappe.commands.schedule

  • 禁用计划程序:禁用指定站点的计划程序
  • 医生:获取有关所有计划程序状态的诊断信息 站点(如果未指定)和工作台上的活跃工人。
  • 启用计划程序:为指定站点启用计划程序。
  • 清除作业:清除任何挂起的定期任务(如果事件选项不是) 给定,它将清除网站的所有内容。
  • 准备迁移:检查特定站点是否已准备好进行迁移 通过检查是否存在任何挂起的后台作业。
  • 计划程序:将任何站点的计划程序的状态从暂停、恢复、禁用或启用状态更改为暂停恢复、禁用启用状态。
  • 设置维护模式:在配置中设置维护模式的值 对于指定的站点。
  • 显示挂起的作业:获取有关后台作业的诊断信息。
  • 计划:启动工作台的调度程序进程。此过程 管理文件中定义的调度程序事件。你可以找到这个 进程管理器的工作台配置中也提到了命令。hooks.py
  • 工作线程:在工作台上启动工作进程。此启动的过程将 管理在此工作台上启动的所有后台作业。
  • 触发器-调度程序-事件:为 指定的站点。

弗拉普实用程序命令

Frappe 实用程序命令,可以是特定于站点或工作台的。这些命令 在模块 下定义。frappe.commands.utils

显示站点配置

为站点应用的配置将作为以下各项的组合应用 bench 目录和站点自己的.您可以在此处阅读有关此内容的更多信息。工作台提供了一个界面来查看 为您的网站应用的值。您可以选择访问此 表格或 JSON 格式的信息。common_site_config.jsonsite_config.jsonfrappe.conf

bench --site {site} show-config

有关更多信息和示例,请参阅工作台 显示配置参考。

更新站点配置

Bench 提供了一个包装器命令,用于在站点配置中插入或更新值 文件。您可以更新站点中的值,以及 bench 目录通过相同的命令。site_config.jsoncommon_site_config.json

bench --site {site} set-config KEY VALUE

有关更多信息和示例,请参阅工作台 设置配置引用。

显示已安装应用程序的版本

该命令显示所有已安装的应用程序及其版本。version

bench version [OPTIONS]

在版本 13 中,引入了 / 选项。此选项允许 以显示有关分支和上次提交的其他信息。欲了解更多信息 信息和示例,请参阅工作台 版本参考。-f--format

更多命令

  • 添加到电子邮件队列:将电子邮件添加到电子邮件队列
  • build:为安装在工作台上的 Frappe 应用程序构建资产。
  • 批量重命名:通过 CSV 文件重命名多个记录。示例文件格式(不带标头):

    旧名称新名称合并
    HR-EMP-00001EMP0001
    HR-EMP-00002EMP0002
    HR-EMP-00003EMP0003
    HR-EMP-00004EMP0004
    HR-EMP-00005EMP0005
    HR-EMP-00006EMP0006
  • 清除缓存:清除缓存、文档类型缓存和默认值。

  • 清除网站缓存:清除网站缓存。
  • 控制台:为站点启动 IPython 控制台。与标志一起使用可自动重新加载对代码的更改。--autoreload
  • 数据导入:使用数据导入从 CSV 或 XLSX 批量导入文档。
  • 销毁所有会话:清除所有用户的会话(将其注销)。
  • execute:使用给定的 and 集执行特定函数或方法。argskwargs
  • export-csv:导出包含 DocType 数据的数据导入模板。
  • 导出文档:将单个文档导出为 CSV。
  • 导出夹具:将记录从站点导出到 Frappe 应用程序,作为 JSON 文件。灯具在应用的 hooks.py 文件中定义。
  • export-json:将文档列表作为 json 导出到给定路径,使用“-”作为名称 对于单身人士。
  • 导入 csv:使用数据导入从 CSV 文件导入。
  • 导入文档:导入(插入/更新)文档列表。如果参数是 目录,导入所有以 结尾的文件.json
  • jupyter:启动 Jupyter Notebook 服务器。
  • make-app:创建一个样板 Frappe 应用程序。
  • 数据库控制台:启动站点的交互式数据库控制台。此命令是命令的别名:mariadb,postgres
  • mariadb:启动 mysql 站点的 MySQL 交互式控制台。
  • postgres:启动 postgres 站点的 PostgreSQL 交互式控制台。
  • 重建全局搜索:在当前站点中设置帮助表(在 之后调用) 迁移)。
  • request:以管理员身份提出请求,并对路径进行论证。
  • 重置权限:将所有文档类型的权限重置为其默认值 设置。
  • 运行测试:在指定站点上运行 Python 测试。
  • 运行并行测试:在 CI 上并行运行 Python 测试。
  • run-ui-tests:运行 Cypress UI tests。
  • 服务:启动工作台的网络服务器。
  • watch:在 JS 和 CSS 文件更改时观察和连接它们。

http://www.kler.cn/a/7418.html

相关文章:

  • Web导出Excel表格
  • 常见的测试方法
  • Windows下使用adb实现在模拟器中ping
  • lua实现雪花算法
  • 【WebRTC】视频发送链路中类的简单分析(下)
  • 无人机检测车辆——多目标检测
  • 多个硬盘挂载到同一个目录
  • 重新理解一个类中的forward()和__init__()函数
  • MyBatisPlus-DML编程控制
  • Muduo库源码剖析(八)——TcpServer类
  • 腾讯云轻量应用服务器价格表(2023版)
  • 前端学习:HTML基本标签
  • cgroups是linux内核中限制、记录、隔离进程组(process groups)所使用的物理资源的机制
  • 【C++从0到1】22、C++中switch语句
  • 「SQL面试题库」 No_25 统计各专业学生人数
  • 【ChatGPT】ChatGPT 能否取代程序员?
  • 英语——不定词(二)
  • 对象的比较(数据结构系列12)
  • 2023中国程序员薪酬报告出炉,你拖后腿了吗?
  • ViewBinding用法
  • mysql知识点看这一篇就够了!
  • 振动监测信号的角度域之阶次分析(1)
  • ChatGPT 存在很大的隐私问题
  • Java分布式事务(七)
  • 前端后端交互系列之原生Ajax的使用
  • C的实用笔记39——结构体占用内存大小(了解)