Skip to main content

datasette-gunicorn

PyPI Changelog Tests License

Run a Datasette server using Gunicorn

Installation

Install this plugin in the same environment as Datasette.

datasette install datasette-gunicorn

Usage

The plugin adds a new datasette gunicorn command. This takes most of the same options as datasette serve, plus one more option for setting the number of Gunicorn workers to start:

-w/--workers X - set the number of workers. Defaults to 1.

To start serving a database using 4 workers, run the following:

datasette gunicorn fixtures.db -w 4

It is advisable to switch your datasette into WAL mode to get the best performance out of this configuration:

sqlite3 fixtures.db 'PRAGMA journal_mode=WAL;'

Run datasette gunicorn --help for a full list of options (which are the same as datasette serve --help, with the addition of the new -w option).

datasette gunicorn --help

Not all of the options to datasette serve are supported. Here's the full list of available options:

Usage: datasette gunicorn [OPTIONS] [FILES]...

  Start a Gunicorn server running to serve Datasette

Options:
  -i, --immutable PATH      Database files to open in immutable mode
  -h, --host TEXT           Host for server. Defaults to 127.0.0.1 which means
                            only connections from the local machine will be
                            allowed. Use 0.0.0.0 to listen to all IPs and allow
                            access from other machines.
  -p, --port INTEGER RANGE  Port for server, defaults to 8001. Use -p 0 to
                            automatically assign an available port.
                            [0<=x<=65535]
  --cors                    Enable CORS by serving Access-Control-Allow-Origin:
                            *
  --load-extension TEXT     Path to a SQLite extension to load
  --inspect-file TEXT       Path to JSON file created using "datasette inspect"
  -m, --metadata FILENAME   Path to JSON/YAML file containing license/source
                            metadata
  --template-dir DIRECTORY  Path to directory containing custom templates
  --plugins-dir DIRECTORY   Path to directory containing custom plugins
  --static MOUNT:DIRECTORY  Serve static files from this directory at /MOUNT/...
  --memory                  Make /_memory database available
  --config CONFIG           Deprecated: set config option using
                            configname:value. Use --setting instead.
  --setting SETTING...      Setting, see
                            docs.datasette.io/en/stable/settings.html
  --secret TEXT             Secret used for signing secure values, such as
                            signed cookies
  --version-note TEXT       Additional note to show on /-/versions
  --help-settings           Show available settings
  --create                  Create database files if they do not exist
  --crossdb                 Enable cross-database joins using the /_memory
                            database
  --nolock                  Ignore locking, open locked files in read-only mode
  -w, --workers INTEGER     Number of Gunicorn workers  [default: 1]
  --help                    Show this message and exit.

Development

To set up this plugin locally, first checkout the code. Then create a new virtual environment:

cd datasette-gunicorn
python3 -m venv venv
source venv/bin/activate

Now install the dependencies and test dependencies:

pip install -e '.[test]'

To run the tests:

pytest

Metadata

Release files for datasette-gunicorn 0.1.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for datasette-gunicorn 0.1.1
File Size Uploaded Provenance Actions
datasette-gunicorn-0.1.1.tar.gz 8.1 kB Without provenance Details for datasette-gunicorn-0.1.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for datasette-gunicorn 0.1.1
File Interpreter ABI Platform Actions
datasette_gunicorn-0.1.1-py3-none-any.whl Python 3 none any Details for datasette_gunicorn-0.1.1-py3-none-any.whl

Total release size: 16.7 kB

Release files / datasette-gunicorn-0.1.1.tar.gz

Download URL datasette-gunicorn-0.1.1.tar.gz
Size 8.1 kB
Tags Source
SHA-256 checksum
How to use checksums
3dabced1e00ed60e0cb85133f04836a355e9ce0ced9fc174a229b5deb27de27e
BLAKE2b-256 checksum
How to use checksums
f7eaa930415f1c3b4272a8ace361acabb467288d0207b42bd5caf6c5da2fa8d7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9

Release files / datasette_gunicorn-0.1.1-py3-none-any.whl

Download URL datasette_gunicorn-0.1.1-py3-none-any.whl
Size 8.6 kB
Tags Python 3
SHA-256 checksum
How to use checksums
54a66d345713345be3ed791280f104f31ea7e86f243962cfb76df8aa071ad8d9
BLAKE2b-256 checksum
How to use checksums
f0cca77137b30be3552b2ebfda711570c648ba6e7f842f1a202420b6747d21f9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.10.9

Security for datasette-gunicorn 0.1.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page