2
0
mirror of https://github.com/frappe/bench.git synced 2024-11-11 15:51:03 +00:00

update Readme, fix #17 fix #9 fix #1

This commit is contained in:
Pratik Vyas 2014-07-16 14:09:16 +05:30
parent 0cf0fefdac
commit 15e8568d43

View File

@ -25,6 +25,7 @@ Install pre-requisites,
* Python 2.7
* MariaDB
* Redis
* wkhtmltopdf (optional, required for pdf generation)
Install bench,
@ -67,6 +68,66 @@ Basic Usage
bench start
Updating
========
On initializing a new bench, a cronjob is add to automatically update the bench
at 1000hrs (as per the time on your machine). You can disable this by running
`bench config auto_update off` and run `bench config auto_update on` to switch
it on again. To change the time of update, you will have to edit the cronjob
manually using `crontab -e`.
To manually update the bench, run `bench update` to update all the apps, run
patches, build JS and CSS files and restart supervisor (if configured to).
You can also run the parts of the bench selectively.
`bench update --pull` will only pull changes in the apps
`bench update --patch` will only run database migrations in the apps
`bench update --build` will only build JS and CSS files for the bench
`bench update --bench` will only update the bench utility (this project)
Running the bench
==================
To run the bench,
*For development*: `bench start`
*For production*: Configure supervisor and nginx
To run the bench, a few services need to be running apart from the processes.
External services
-----------------
* MariaDB (Datastore for frappe)
* Redis (Broker for frappe background workers)
* nginx (for production deployment)
* supervisor (for production deployment)
Frappe Processes
----------------
* WSGI Server
* The WSGI server is responsible for responding to the HTTP requests to
frappe. In development scenario (`frappe --serve` or `bench start`), the
Werkzeug WSGI server is used and in production, gunicorn (automatically
configured in supervisor) in used.
* Celery Worker Processes
* The Celery worker proceses execute background jobs in the Frappe system.
These processes are automatically started when `bench start` is run and
for production are conifgured in supervisor configuration.
* Celery Worker Beat Process
* The Celery worker beat process schedules enqueing of scheduled jobs in the
Frappe system. This process is automatically started when `bench start` is
run and for production are conifgured in supervisor configuration.
Production Deployment
=====================
@ -95,7 +156,7 @@ The bench will also need to restart the processes managed by supervisor when you
update the apps. To automate this, you will have to setup sudoers using the
command
`bench setup sudoers`
`sudo bench setup sudoers`
Nginx
-----
@ -112,3 +173,9 @@ eg,
bench setup supervisor
sudo ln -s `pwd`/config/nginx.conf /etc/nginx/conf.d/frappe.conf
```
Note: When you restart nginx after the configuration change, it might fail if
you have another configuration with server block as default for port 80 (in most
cases for the nginx welcome page). You will have disable this config. Most
probable places for it to exist are `/etc/nginx/conf.d/default.conf` and
`/etc/nginx/conf.d/default`.