- Python 3
- FastAPI - Framework for building WEB APIs
- FastStream - Framework for building message queues
- Typer - Framework for buildig CLIs
- SQLAlchemy - Toolkit for building high level db integrations
- alembic - Tool for writing db migrations
- redis-py - Redis python client
- Dishka - DI framework
- PostgreSQL
- Redis
- Install
pip install -e ".[web_api]"
-
Create config file
-
Provide
CONFIG_PATH
env variable -
Run migrations
amdb alembic upgrade head
- Run worker
amdb worker
- Run server
amdb web-api
-
Create config file
-
Provide
CONFIG_PATH
,REDIS_PASSWORD
,REDIS_PORT_NUMBER
,POSTGRES_USER
,POSTGRES_PASSWORD
,POSTGRES_DB
,SERVER_HOST
,SERVER_PORT
env variables -
Run worker and server
docker-compose up web_api
- Run migrations
docker exec -it amdb_backend.web_api amdb alembic upgrade head