Skip to content

A plugin of nextline-graphql. A relational database for nextline

License

Notifications You must be signed in to change notification settings

simonsobs/nextline-rdb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nextline-rdb

PyPI - Version PyPI - Python Version

Test Status Test Status codecov

A plugin for nextline-graphql. A relational database for nextline-graphql.


Table of Contents

Installation

pip install nextline-rdb

Nextline-graphql automatically detects this package as a plugin.

Configuration

Environment variable Default value Description
NEXTLINE_DB__URL sqlite+aiosqlite:// The DB URL of SQLAlchemy

Note: Only tested on SQLite + aiosqlite.

Examples

How to run Nextline-graphql with Nextline RDB

In a virtual environment

Create a virtual environment and install packages.

python -m venv venv
source venv/bin/activate
pip install nextline-graphql
pip install nextline-rdb
pip install uvicorn

Specify the database URL.

export NEXTLINE_DB__URL="sqlite+aiosqlite:///db.sqlite3"

Run on the port 8080.

uvicorn --lifespan on --factory --port 8080 nextlinegraphql:create_app

Check with a web browser at http://localhost:8080/.

In a Docker container

Create a Docker image.

git clone git@github.com:simonsobs/nextline-rdb.git
cd nextline-rdb
docker image build --tag nextline-rdb .

Run on the port 8080 with a file on the host machine db/db.sqlite3 as the persistent DB. The directory db/ and the file db.sqlite3 will be created if they don't exist.

docker run -p 8080:8000 --env NEXTLINE_DB__URL='sqlite+aiosqlite:////db/db.sqlite3' -v "$(pwd)/db:/db" nextline-rdb

Check with a web browser at http://localhost:8080/.

About

A plugin of nextline-graphql. A relational database for nextline

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages