UVICORN(1) | General Commands Manual | UVICORN(1) |
NAME¶
uvicorn — ASGI server implementation
SYNOPSIS¶
uvicorn [--host HOST] [--port PORT] [--uds UNIX_SOCKET] [--fd FILE_DESCRIPTOR] [--log-level LOG_LEVEL] [--no-access-log] [--debug] [--loop LOOP] [--http HTTP_IMPLEMENTATION] [--ws WEBSOCKET_IMPLEMENTATION] [--wsgi] [--ping-interval PING_INTERVAL] [--root-path PATH] [--proxy-headers] [--limit-concurrency CONNECTIONS] [--limit-max-requests REQUESTS] [--timeout-keep-alive SECONDS] [APP]
DESCRIPTION¶
This manual page documents briefly the uvicorn command.
This manual page was written for the Debian distribution because the original program does not have a manual page.
uvicorn is a program that provides an ASGI server implementation.
OPTIONS¶
This program follows the usual GNU command line syntax, with long options starting with two dashes (`-'). A summary of options is included below.
- --host HOST
- Bind socket to this host. Use --host 0.0.0.0 to make the application available on your local network. Default: '127.0.0.1'.
- --port PORT
- Bind to a socket with this port. Default: 8000.
- --uds UNIX_SOCKET
- Bind to a UNIX domain socket. Useful if you want to run Uvicorn behind a reverse proxy.
- --fd FILE_DESCRIPTOR
- Bind to socket from this file descriptor. Useful if you want to run Uvicorn within a process manager.
- --debug
- Enable debug mode. Provides error tracebacks in the browser, and enables auto-reloading.
- --log-level LOG_LEVEL
- Set the log level. Options: 'critical', 'error', 'warning', 'info', 'debug'. Default: 'info'.
- --no-access-log
- Disable access log only, without changing log level.
- --loop LOOP
- Set the event loop implementation. The uvloop implementation provides greater performance, but is not compatible with Windows or PyPy. Options: 'auto', 'asyncio', 'uvloop'. Default: 'auto'.
- --http HTTP_IMPLEMENTATION
- Set the HTTP protocol implementation. The httptools implementation provides greater performance, but it not compatible with PyPy, and requires compilation on Windows. Options: 'auto', 'h11', 'httptools'. Default: 'auto'.
- --ws WEBSOCKET_IMPLEMENTATION
- Set the WebSockets protocol implementation. Either of the websockets and wsproto packages are supported. Use 'none' to deny all websocket requests. Options: 'auto', 'none', 'websockets', 'wsproto'. Default: 'auto'.
- --wsgi
- Use WSGI as the application interface rather than ASGI. Note that WSGI mode always disables WebSocket support, as it is not supported by the WSGI interface.
- --root-path PATH
- Set the ASGI root_path for applications submounted below a given URL path.
- --proxy-headers
- Use the X-Forwarded-Proto and X-Forwarded-For headers to populate remote scheme/address info.
- --limit-concurrency CONNECTIONS
- Maximum number of concurrent connections or tasks to allow, before issuing HTTP 503 responses. Useful for ensuring known memory usage patterns even under over-resourced loads.
- --limit-max-requests REQUESTS
- Maximum number of requests to service before terminating the process. Useful when running together with a process manager, for preventing memory leaks from impacting long-running processes.
- --timeout-keep-alive SECONDS
- Close Keep-Alive connections if no new data is received within this timeout. Default: 5.
ARGUMENTS¶
- APP
- The ASGI application to run, in the format "module:attribute".
AUTHOR¶
This manual page was written by fladi fladi@debian.org for the Debian system (and may be used by others). Permission is granted to copy, distribute and/or modify this document under the terms of the GNU General Public License, Version 2 any later version published by the Free Software Foundation.
On Debian systems, the complete text of the GNU General Public License can be found in /usr/share/common-licenses/GPL.