optymalizacje_kodu #8

Merged
gru merged 23 commits from optymalizacje_kodu into master 2025-07-31 10:55:39 +02:00
3 changed files with 28 additions and 13 deletions
Showing only changes of commit 5dc6c947d1 - Show all commits

View File

@@ -41,6 +41,7 @@ AUTH_COOKIE_MAX_AGE=86400
# AUTHORIZED_COOKIE_VALUE:
# Wartość ciasteczka uprawniającego do dostępu (np. do zasobów zabezpieczonych)
# Powinna być trudna do przewidzenia
# Chodzi to o zabezpieczenie strony "hasłęm głównym czyli endpointem /system-auth"
AUTHORIZED_COOKIE_VALUE=twoj_wlasny_hash
# SESSION_COOKIE_SECURE:
@@ -50,6 +51,10 @@ AUTHORIZED_COOKIE_VALUE=twoj_wlasny_hash
# Zalecane: 1 w produkcji (HTTPS), 0 w dev.
SESSION_COOKIE_SECURE=0
# BCRYPT_PEPPER:
# Dodatkowy „sekretny klucz” (pepper) dodawany do hasła przed zahashowaniem
# Zwiększa bezpieczeństwo przechowywanych haseł
BCRYPT_PEPPER=sekretnyKluczbcrypt
# HEALTHCHECK_TOKEN:
# Token wykorzystywany do sprawdzania stanu aplikacji (np. w Docker Compose)
@@ -114,10 +119,8 @@ ENABLE_CSP=1
# a przy przejściach między domenami tylko origin (np. https://example.com).
# Zalecane ustawienie dla dobrej równowagi między prywatnością a funkcjonalnością.
# Inne możliwe wartości: no-referrer, same-origin, origin, strict-origin, unsafe-url itd.
REFERRER_POLICY="strict-origin-when-cross-origin"
# DEBUG_MODE:
# Czy uruchomić aplikację w trybie debugowania (z konsolą błędów i autoreloaderem)
# Domyślnie: 1
@@ -128,7 +131,6 @@ DEBUG_MODE=1
# Domyślnie: 0
DISABLE_ROBOTS=0
# ========================
# Nagłówki cache
# ========================
@@ -156,6 +158,4 @@ LIB_CSS_CACHE_CONTROL="public, max-age=604800"
# UPLOADS_CACHE_CONTROL:
# Nagłówki Cache-Control dla wgrywanych plików (/uploads/)
# Domyślnie: "public, max-age=2592000, immutable"
UPLOADS_CACHE_CONTROL="public, max-age=2592000, immutable"
BCRYPT_PEPPER=sekretnyKluczbcrypt
UPLOADS_CACHE_CONTROL="public, max-age=2592000, immutable"

17
_tools/wait_for_db.py Normal file
View File

@@ -0,0 +1,17 @@
import os
import socket
import time
host = os.environ.get("DB_HOST", "mysql")
port = int(os.environ.get("DB_PORT", 3306))
print(f"Czekam na bazę danych {host}:{port}...")
while True:
try:
with socket.create_connection((host, port), timeout=5):
print("Baza danych jest dostępna.")
break
except OSError:
print("Baza jeszcze nie odpowiada, czekam...")
time.sleep(2)

View File

@@ -1,12 +1,10 @@
#!/bin/sh
# Czekaj aż baza będzie gotowa
echo "Czekam na MySQL..."
until nc -z -v -w30 "$DB_HOST" "$DB_PORT"
do
echo "Baza jeszcze nie odpowiada, czekam..."
sleep 2
done
# Czekaj na bazę w Pythonie
python _tools/wait_for_db.py
# Jak baza gotowa, to migruj li daj informacje
flask db upgrade 2>/dev/null || flask db_info
# Start aplikacji
exec python app.py