Table of Contents
Modules don't have any dependencies between them, they are independent. New objects for dependencies are created in deps.py file.
app
├── core
│ ├── config.py
└── modules
├── api
│ ├── v1
│ │ ├── api.py
│ ├── deps.py
│ └── routes.py
├── db
│ ├── deps.py
│ └── session.py
└── items
├── deps.py
├── service.py
├── routes.py
└── schemas.py
We use Dependency Injection, each module has file deps.py. How to import module dependencies:
Create table query for PostgreSQL:
CREATE TABLE IF NOT EXISTS items (
id SERIAL PRIMARY KEY,
title VARCHAR(255) NOT NULL,
description VARCHAR(255) NOT NULL
);
Insert data query for PostgreSQL:
INSERT INTO items (title, description) VALUES ('Item 1', 'Description 1');
Build image:
docker build . --tag gcr.io/fastapi-template-394307/fastapi-template
Run container:
docker run -p 5000:8080 gcr.io/fastapi-template-394307/fastapi-template
Deploy to Google Cloud Run:
gcloud builds submit --tag gcr.io/fastapi-template-394307/fastapi-template
gcloud run deploy --image gcr.io/fastapi-template-394307/fastapi-template --platform managed
pip install locust
locust -f locustfile.py