Frappe Framework

Frappe Framework

Open in ChatGPT
Ask ChatGPT about this page
Open in Claude
Ask Claude about this page

CLI Reference (bench)

CLI Reference (bench)

bench is the command-line tool for managing Frappe installations. This page covers the most useful commands.

Site management

bench new-site mysite.local --admin-password=admin
bench drop-site mysite.local         # Permanent — be sure
bench --site mysite migrate          # Run pending migrations
bench --site mysite clear-cache
bench list-sites

App management

bench get-app erpnext --branch version-15    # Clone into apps/
bench --site mysite install-app erpnext      # Install on site
bench --site mysite uninstall-app my_app     # Removes data — be sure
bench remove-app erpnext                      # Remove from bench (not site)

Running code

# Open IPython console with site context
bench --site mysite console

# Execute a Python function
bench --site mysite execute frappe.utils.now

# Execute with arguments
bench --site mysite execute my_app.api.run --args '["arg1", "arg2"]'

Background work

bench start                          # Start all services (web, worker, scheduler, socketio)
bench restart                        # Restart all
bench worker                         # Run a worker process
bench --site mysite show-pending-jobs

Backups

bench --site mysite backup --with-files
bench --site mysite restore /path/to/backup.sql.gz

Database

bench --site mysite mariadb           # Open MariaDB shell with site DB
bench --site mysite reset-perms       # Recreate role permissions
bench setup procfile                  # Regenerate Procfile for development

Diagnostics

bench --site mysite show-config
bench version                         # Frappe version + installed apps
bench logs                            # Tail web/worker/scheduler logs
bench --site mysite enable_profile    # Profile next request (slow)

Build & dev

bench build                          # Build all app assets (CSS, JS)
bench build --app my_app             # Just one app
bench watch                          # Auto-rebuild on file change (dev)
bench setup requirements             # Reinstall Python deps

Updating

bench update --reset                 # Pull latest, run migrations, rebuild assets
bench update --no-backup             # Skip backup step (faster, riskier)
bench switch-to-branch version-15 frappe erpnext   # Change branch for apps

Environment

bench setup nginx
bench setup supervisor
bench setup production myuser        # One-shot production setup
Last updated 3 months ago
Was this helpful?
Thanks!