可打印的 Bench CLI 速查表
在此处获取最重要的 Bench CLI 命令的 A4 大小可打印速查表 [这里](/files/Bench Cheatsheet v1.1.pdf)。下载、打印并放在你的桌子上!
常规用法
-
bench --version– 显示 bench 版本 -
bench version– 显示所有应用的版本 -
bench src– 显示 bench 仓库目录 -
bench --help– 显示所有命令和帮助 -
bench [command] --help– 显示命令的帮助 -
bench init [bench-name]– 创建一个新的 bench(从主目录运行)--python TEXTPython 可执行文件的路径。--ignore-exist如果 Bench 实例已存在则忽略。--apps_path TEXT初始化后要安装的应用的 json 文件路径--frappe-path TEXTfrappe 仓库的路径--frappe-branch TEXT克隆 frappe 的特定分支--clone-from TEXT从路径复制仓库--clone-without-update从路径复制仓库但不更新--no-procfile拉取 bench 中所有应用的更改--no-backups为 bench 中的所有站点运行迁移--no-auto-update为 bench 构建 JS 和 CSS 产物--skip-redis-config-generation如果已经指定了 common-site-config 文件,则跳过 redis 配置生成--verbose安装期间输出详细日志
-
bench --site [site-name] COMMAND– 为命令指定站点 -
bench update– 拉取 bench-repo 和所有应用的更改,应用补丁,构建 JS 和 CSS,然后进行迁移。--pull拉取 bench 中所有应用的更改--patch为 bench 中的所有站点运行迁移--build为 bench 构建 JS 和 CSS 产物--bench更新 bench--requirements更新依赖项--restart-supervisor更新后重启 supervisor 进程--no-backup更新前不进行备份--reset忽略本地更改并更新--dev在新的 bench 上启用开发者模式,并安装运行测试所需的开发者依赖项。
-
bench restart重启所有 bench 服务 -
bench backup创建默认站点的备份。
备份将保存到 ~/frappe-bench/sites/{your site}/private/backups/。
-
bench backup-all-sites备份所有站点--with-files备份包含文件的站点
-
bench restore恢复--with-private-files恢复包含私有文件的站点(tar 文件路径)--with-public-files恢复包含公共文件的站点(tar 文件路径)
-
bench migrate运行补丁、同步架构并重建文件/翻译--rebuild-website TEXT迁移后重建网页
-
bench migrate-env [python-version]将虚拟环境迁移到所需的 Python 版本 -
bench --site [sitename] set-admin-password [password]将重置管理员密码 -
bench destroy-all-sessions销毁所有会话
配置
-
bench config– 更改 bench 配置auto_update [on/off]启用/禁用 bench 自动更新dns_multitenant [on/off]启用/禁用 DNS 多租户http_timeout设置 HTTP 超时restart_supervisor_on_update启用/禁用 supervisor 自动重启serve_default_site配置 nginx 以在以下地址提供默认站点update_bench_on_update启用/禁用运行 bench 时的 bench 更新…
-
bench setup– 设置组件-
auto-update为 bench 自动更新添加 cronjob -
backups为 bench 备份添加 cronjob -
config覆盖或创建 config.json -
env为 bench 设置 virtualenv -
nginx为 nginx 生成配置 -
procfile为 bench start 设置 Procfile -
production将 bench 设置为生产环境 -
redis为 redis 缓存生成配置 -
socketio为 socketio 服务器设置 node 依赖项 -
sudoers将命令添加到 sudoers 列表以执行… -
supervisor为 supervisor 生成配置 -
add-domain为站点添加自定义域名 -
firewall设置防火墙并阻止除 22、80 和 443 之外的所有端口 -
ssh-port更改默认 SSH 连接端口 -
requirements更新 Python 和 Node 包--node仅更新 Node 包--python仅更新 Python 包--dev仅更新 Python 开发依赖项。
-
-
bench set-nginx-port [sitename] [port]– 在生产环境中设置站点的端口
开发
-
bench new-app [app-name]创建一个新应用 -
bench get-app [repo-link]– 从 git 仓库下载应用并安装--branch [branch-name]获取应用的特定分支
-
bench install-app [app-name]安装现有应用 -
bench remove-from-installed-apps [app-name]从应用列表中移除应用 -
bench uninstall-app [app-name]删除应用及与应用链接的所有内容(Bench 需要正在运行) -
bench remove-app [app-name]从 bench 中完全移除应用 -
bench --site [sitename] --force reinstall使用全新数据库重新安装(注意:将清除旧数据库) -
bench new-site [sitename]– 创建一个新站点--db-name数据库名称--db-host用于远程连接的自定义数据库主机 URL--db-port自定义数据库监听端口(例如,非默认的 3306 端口)--mariadb-root-usernameMariaDB 的 root 用户名--mariadb-root-passwordMariaDB 的 root 密码--admin-password新站点的管理员密码--verbose详细输出--force如果站点/数据库已存在,则强制恢复--source_sql使用 SQL 文件初始化数据库--install-app安装后安装应用`
-
bench use [site]设置默认站点 -
bench drop-site从磁盘和数据库中彻底删除站点--root-login--root-password
-
bench set-config [key] [value]向站点的配置文件添加键值对 -
bench console在 bench 虚拟环境中打开 IPython 控制台--autoreload自动重新加载代码更改
-
bench execute在任何应用内执行方法。- 例如:
bench execute frappe.utils.scheduler.enqueue_scheduler_events
- 例如:
-
bench --site [sitename] mariadb打开 SQL 控制台 -
bench --site [sitename] export-fixtures [--app TEXT]将应用钩子中定义的记录导出为 JSON 文件。 -
bench run-tests运行测试--app应用名称--doctype要运行测试的 DocType--test特定测试--module运行包含测试的特定模块--profile在测试上运行 Python 性能分析器
-
bench disable-production禁用生产环境 -
bench serve在0.0.0.0上启动开发 Web 服务器--port在不同端口上启动 Web 服务器(默认:8000)--profile添加一个性能分析中间件,打印出具体调用了哪些后端方法、调用频率以及耗时。--proxy开发服务器可以运行在代理之后,例如 ngrok / localtunnel--noreload当文件更改时,禁用服务器的自动重启。--nothreading禁用使用线程处理并发请求。当需要多线程时(例如在 PDF 生成期间),可能导致意外行为。--with-coverage测量代码覆盖率并在sites/文件夹中创建报告coverage.xml。同时激活--noreload和--nothreading。
调度器
bench enable-scheduler– 启用将运行计划任务的调度器bench doctor– 获取有关后台工作进程的诊断信息bench show-pending-jobs– 获取待处理任务bench purge-jobs– 销毁所有待处理任务
数据导入
-
bench data-import– 从 .csv、.xls 或 .xlsx 导入批量数据--file文件名--doctypeDocType--type插入/更新