fastapi_auth/ ├─ app/ │ ├─ init.py │ ├─ main.py │ ├─ models.py │ ├─ database.py │ ├─ schemas.py │ └─ crud.py ├─ requirements.txt ├─ Dockerfile ├─ docker-compose.yml └─ .env.example
- Copy project về máy (hoặc tạo folder
fastapi_auththeo cấu trúc phía trên). - Tạo file
.envtừ.env.examplevà chỉnhSECRET_KEY. - Chạy cục bộ (không Docker):
python -m venv .venv
source .venv/bin/activate # hoặc .venv\Scripts\activate trên Windows
pip install -r requirements.txt
uvicorn app.main:app --reload- Chạy bằng Docker:
docker-compose up --build-
Endpoints:
POST /registerJSON{ "username": "xxx", "password": "yyy" }→ tạo userPOST /tokenform-datausername,password→ trảaccess_tokenGET /users/meheaderAuthorization: Bearer <token>→ thông tin user bảo vệ
-
Database: SQLite file
app.dbnằm trong thư mục gốc (được mount vào container nếu dùng docker-compose)
Nếu bạn muốn mình chuyển thành API + trang HTML (form register/login) hoặc thêm refresh tokens, hoặc chuyển lên Postgres + Alembic migration, mình làm tiếp luôn.
- Copy project về máy (hoặc tạo folder
fastapi_auththeo cấu trúc phía trên). - Tạo file
.envtừ.env.examplevà chỉnhSECRET_KEY. - Chạy cục bộ (không Docker):
python -m venv .venv
source .venv/bin/activate # hoặc .venv\Scripts\activate trên Windows
pip install -r requirements.txt
uvicorn app.main:app --reload- Chạy bằng Docker:
docker-compose up --build-
Endpoints:
POST /registerJSON{ "username": "xxx", "password": "yyy" }→ tạo userPOST /tokenform-datausername,password→ trảaccess_tokenGET /users/meheaderAuthorization: Bearer <token>→ thông tin user bảo vệ
-
Database: SQLite file
app.dbnằm trong thư mục gốc (được mount vào container nếu dùng docker-compose)
Nếu bạn muốn mình chuyển thành API + trang HTML (form register/login) hoặc thêm refresh tokens, hoặc chuyển lên Postgres + Alembic migration, mình làm tiếp luôn.