comparison docs/overview.rst @ 8442:75b1994e4959 stable

docs: make it more clear that config-create with http_server=X should be used (Issue #358)
author Mads Kiilerich <mads@kiilerich.com>
date Mon, 08 Jun 2020 14:10:13 +0200
parents d59cb6068e55
children 850f096505ac
comparison
equal deleted inserted replaced
8441:f48b12755d83 8442:75b1994e4959
20 2. **Install Kallithea software.** 20 2. **Install Kallithea software.**
21 This makes the ``kallithea-cli`` command line tool available. 21 This makes the ``kallithea-cli`` command line tool available.
22 22
23 3. **Create low level configuration file.** 23 3. **Create low level configuration file.**
24 Use ``kallithea-cli config-create`` to create a ``.ini`` file with database 24 Use ``kallithea-cli config-create`` to create a ``.ini`` file with database
25 connection info, mail server information, some web server configuration, 25 connection info, mail server information, configuration for the specified
26 etc. 26 web server, etc.
27 27
28 4. **Populate the database.** 28 4. **Populate the database.**
29 Use ``kallithea-cli db-create`` with the ``.ini`` file to create the 29 Use ``kallithea-cli db-create`` with the ``.ini`` file to create the
30 database schema and insert the most basic information: the location of the 30 database schema and insert the most basic information: the location of the
31 repository store and an initial local admin user. 31 repository store and an initial local admin user.
164 ``gearbox serve`` as a convenient way to launch a Python WSGI / web server 164 ``gearbox serve`` as a convenient way to launch a Python WSGI / web server
165 from the command line. That is perfect for development and evaluation. 165 from the command line. That is perfect for development and evaluation.
166 Actual use in production might have different requirements and need extra 166 Actual use in production might have different requirements and need extra
167 work to make it manageable as a scalable system service. 167 work to make it manageable as a scalable system service.
168 168
169 Gearbox comes with its own built-in web server but Kallithea defaults to use 169 Gearbox comes with its own built-in web server for development but Kallithea
170 Waitress_. Gunicorn_ is also an option. These web servers have different 170 defaults to using Waitress_. Gunicorn_ and Gevent_ are also options. These
171 limited feature sets. 171 web servers have different limited feature sets.
172 172
173 The web server used by ``gearbox`` is configured in the ``.ini`` file passed 173 The web server used by ``gearbox serve`` is configured in the ``.ini`` file.
174 to it. The entry point for the WSGI application is configured 174 Create it with ``config-create`` using for example ``http_server=waitress``
175 in ``setup.py`` as ``kallithea.config.middleware:make_app``. 175 to get a configuration starting point for your choice of web server.
176
177 (Gearbox will do like ``paste`` and use the WSGI application entry point
178 ``kallithea.config.middleware:make_app`` as specified in ``setup.py``.)
176 179
177 - `Apache httpd`_ can serve WSGI applications directly using mod_wsgi_ and a 180 - `Apache httpd`_ can serve WSGI applications directly using mod_wsgi_ and a
178 simple Python file with the necessary configuration. This is a good option if 181 simple Python file with the necessary configuration. This is a good option if
179 Apache is an option. 182 Apache is an option.
180 183
181 - uWSGI_ is also a full web server with built-in WSGI module. 184 - uWSGI_ is also a full web server with built-in WSGI module. Use
185 ``config-create`` with ``http_server=uwsgi`` to get a ``.ini`` file with
186 uWSGI configuration.
182 187
183 - IIS_ can also server WSGI applications directly using isapi-wsgi_. 188 - IIS_ can also server WSGI applications directly using isapi-wsgi_.
184 189
185 - A `reverse HTTP proxy <https://en.wikipedia.org/wiki/Reverse_proxy>`_ 190 - A `reverse HTTP proxy <https://en.wikipedia.org/wiki/Reverse_proxy>`_
186 can be put in front of another web server which has WSGI support. 191 can be put in front of another web server which has WSGI support.
198 continuous hammering from the internet. 203 continuous hammering from the internet.
199 204
200 205
201 .. _Python: http://www.python.org/ 206 .. _Python: http://www.python.org/
202 .. _Gunicorn: http://gunicorn.org/ 207 .. _Gunicorn: http://gunicorn.org/
208 .. _Gevent: http://www.gevent.org/
203 .. _Waitress: http://waitress.readthedocs.org/en/latest/ 209 .. _Waitress: http://waitress.readthedocs.org/en/latest/
204 .. _Gearbox: http://turbogears.readthedocs.io/en/latest/turbogears/gearbox.html 210 .. _Gearbox: http://turbogears.readthedocs.io/en/latest/turbogears/gearbox.html
205 .. _PyPI: https://pypi.python.org/pypi 211 .. _PyPI: https://pypi.python.org/pypi
206 .. _Apache httpd: http://httpd.apache.org/ 212 .. _Apache httpd: http://httpd.apache.org/
207 .. _mod_wsgi: https://code.google.com/p/modwsgi/ 213 .. _mod_wsgi: https://code.google.com/p/modwsgi/