diff options
author | Marcel Hellkamp <marc@gsites.de> | 2011-12-01 22:11:07 +0100 |
---|---|---|
committer | Marcel Hellkamp <marc@gsites.de> | 2011-12-01 22:13:54 +0100 |
commit | b3d14ed6f79e8ff4fb241520ded3210aba36fec4 (patch) | |
tree | 062ed98aaf67b7b69c3d34d9133e2632d7957e65 | |
parent | 3332f5a8eae8d7fad5f30629d752f6860aa79678 (diff) | |
download | bottle-b3d14ed6f79e8ff4fb241520ded3210aba36fec4.tar.gz |
docs: Command-line interface
-rwxr-xr-x | bottle.py | 2 | ||||
-rwxr-xr-x | docs/tutorial.rst | 47 |
2 files changed, 48 insertions, 1 deletions
@@ -28,7 +28,7 @@ if __name__ == '__main__': _opt("--version", action="store_true", help="show version number.") _opt("-b", "--bind", metavar="ADDRESS", help="bind socket to ADDRESS.") _opt("-s", "--server", default='wsgiref', help="use SERVER as backend.") - _opt("-p", "--plugin", action="append", help="install additinal plugin/s.") + _opt("-p", "--plugin", action="append", help="install additional plugin/s.") _opt("--debug", action="store_true", help="start server in debug mode.") _opt("--reload", action="store_true", help="auto-reload on file changes.") _cmd_options, _cmd_args = _cmd_parser.parse_args() diff --git a/docs/tutorial.rst b/docs/tutorial.rst index b74ed82..2be09c4 100755 --- a/docs/tutorial.rst +++ b/docs/tutorial.rst @@ -846,6 +846,53 @@ running on Windows or any other operating system not supporting finally clauses, etc., are not executed after a ``SIGTERM``. +Command Line Interface +-------------------------------------------------------------------------------- + +.. versionadded: 0.10 + +Starting with version 0.10 you can use bottle as a command-line tool: + +.. code-block:: console + + $ python -m bottle + + Usage: bottle.py [options] package.module:app + + Options: + -h, --help show this help message and exit + --version show version number. + -b ADDRESS, --bind=ADDRESS + bind socket to ADDRESS. + -s SERVER, --server=SERVER + use SERVER as backend. + -p PLUGIN, --plugin=PLUGIN + install additional plugin/s. + --debug start server in debug mode. + --reload auto-reload on file changes. + +The `ADDRESS` field takes an IP address or an IP:PORT pair and defaults to ``localhost:8080``. The other parameters should be self-explanatory. + +Both plugins and applications are specified via import expressions. These consist of an import path (e.g. ``package.module``) and an expression to be evaluated in the namespace of that module, separated by a colon. See :func:`load` for details. Here are some examples: + +.. code-block:: console + + # Grap the 'app' object from the 'myapp.controller' module and + # start a paste server on port 80 on all interfaces. + python -m bottle -server paste -bind 0.0.0.0:80 myapp.controller:app + + # Start a self-reloading development server and serve the global + # default application. The routes are defined in 'test.py' + python -m bottle --debug --reload test + + # Install a custom debug plugin with some parameters + python -m bottle --debug --reload --plugin 'utils:DebugPlugin(exc=True)'' test + + # Serve an application that is created with 'myapp.controller.make_app()' + # on demand. + python -m bottle 'myapp.controller:make_app()'' + + .. _tutorial-deployment: Deployment |