Good question jcyh!
I puzzled over what distinguishes production and development, especially since either environment can run from the same directory if you wish. (Hence developer_mode can be enabled in a production environment.)
‘bench start’ to run the development environment
werkzeug + honcho used in development.
‘sudo supervisorctl start all’ to run the production environment.
nginx + gunicorn are used in production
If you forget to shutdown one environment before starting the other you will get for example ‘bind: Address already in use’ errors to remind you to close down that running instance.