Es ist eine Prämisse eines Projekts, das einmal dokcerisiert wurde. Letztes Mal: Anwendungsentwicklung mit Docker + Python + Flask
├── api
| └── auth.api
├── requirements.txt
└── docker-compose.yaml
auth.py
from flask_httpauth import HTTPBasicAuth
from werkzeug.security import generate_password_hash, check_password_hash
import os
auth = HTTPBasicAuth()
users = {
os.getenv("BASIC_AUTH_USER"): generate_password_hash(os.getenv("BASIC_AUTH_PASSWORD"))
}
@auth.verify_password
def verify_password(username, password):
if username in users:
return check_password_hash(users.get(username), password)
return False
python
from api.auth import auth
#Kürzung
@route('/')
@auth.login_required
def add():
#Kürzung
Fügen Sie "@ auth.login_required" zu Routen hinzu, die eine grundlegende Authentifizierung erfordern.
docker-compose.yaml
version: '3'
services:
api:
container_name: tool-api
#Kürzung
environment:
BASIC_AUTH_USER: "user"
BASIC_AUTH_PASSWORD: "password"
Stellen Sie den in "auth.py" verwendeten Augenpfad auf die Umgebungsvariable ein.
requirements.txt
#Kürzung
flask_httpauth
Fügen Sie die erforderlichen Module hinzu.
Lauf
$ docker-compose up
Recommended Posts