172 lines
6.3 KiB
Plaintext
172 lines
6.3 KiB
Plaintext
# APP_PORT:
|
||
# Domyślny port, na którym uruchamiana jest aplikacja Flask
|
||
# Domyślnie: 8000
|
||
APP_PORT=8000
|
||
|
||
# SECRET_KEY:
|
||
# Klucz używany przez Flask do zabezpieczenia sesji, tokenów i formularzy
|
||
# Powinien być długi i trudny do odgadnięcia
|
||
SECRET_KEY=supersekretnyklucz123
|
||
|
||
# SYSTEM_PASSWORD:
|
||
# Hasło główne administratora systemowego, używane np. przy inicjalizacji
|
||
# Domyślnie: admin
|
||
SYSTEM_PASSWORD=admin
|
||
|
||
# DEFAULT_ADMIN_USERNAME:
|
||
# Domyślna nazwa użytkownika administratora (tworzona przy starcie)
|
||
# Domyślnie: admin
|
||
DEFAULT_ADMIN_USERNAME=admin
|
||
|
||
# DEFAULT_ADMIN_PASSWORD:
|
||
# Domyślne hasło administratora
|
||
# Domyślnie: admin123
|
||
DEFAULT_ADMIN_PASSWORD=admin123
|
||
|
||
# UPLOAD_FOLDER:
|
||
# Ścieżka (względna) do katalogu, gdzie zapisywane są wgrywane pliki
|
||
# Domyślnie: uploads
|
||
UPLOAD_FOLDER=uploads
|
||
|
||
# SESSION_TIMEOUT_MINUTES:
|
||
# Czas bezczynności użytkownika (w minutach), po którym sesja wygasa
|
||
# Domyślnie: 10080 (7 dni)
|
||
SESSION_TIMEOUT_MINUTES=10080
|
||
|
||
# AUTH_COOKIE_MAX_AGE:
|
||
# Czas życia ciasteczka autoryzacyjnego (w sekundach)
|
||
# Domyślnie: 86400 (1 dzień)
|
||
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:
|
||
# Określa, czy ciasteczko sesyjne (Flask session) ma mieć ustawiony atrybut "Secure".
|
||
# Wymusza, by przeglądarka przesyłała je tylko przez HTTPS.
|
||
# W środowisku deweloperskim (HTTP) ustaw na 0, by uniknąć błędu "secure cookie over insecure connection".
|
||
# 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)
|
||
# Domyślnie: alamapsaikota123
|
||
HEALTHCHECK_TOKEN=alamapsaikota123
|
||
|
||
# Rodzaj bazy: sqlite, pgsql, mysql
|
||
# Mozliwe wartosci: sqlite / pgsql / mysql
|
||
DB_ENGINE=sqlite
|
||
|
||
# --- Konfiguracja dla sqlite ---
|
||
# Plik bazy bedzie utworzony automatycznie w katalogu ./instance
|
||
# Pozostale zmienne sa ignorowane przy DB_ENGINE=sqlite
|
||
|
||
# --- Konfiguracja dla pgsql ---
|
||
# Ustaw DB_ENGINE=pgsql
|
||
# Domyslny port PostgreSQL to 5432
|
||
# Wymaga dzialajacego serwera PostgreSQL (np. kontener `postgres`)
|
||
|
||
# --- Konfiguracja dla mysql ---
|
||
# Ustaw DB_ENGINE=mysql
|
||
# Domyslny port MySQL to 3306
|
||
# Wymaga kontenera z MySQL i uzytkownika z dostepem do bazy
|
||
|
||
# Wspolne zmienne (dla pgsql, mysql)
|
||
# DB_HOST = pgsql lub mysql zgodnie z deployem (profil w docker-compose.yml)
|
||
|
||
DB_HOST=pgsql
|
||
DB_PORT=5432
|
||
DB_NAME=myapp
|
||
DB_USER=user
|
||
DB_PASSWORD=pass
|
||
|
||
# ========================
|
||
# Nagłówki bezpieczeństwa
|
||
# ========================
|
||
|
||
# ENABLE_HSTS:
|
||
# Wymusza HTTPS poprzez ustawienie nagłówka Strict-Transport-Security.
|
||
# Zalecane (1) jeśli aplikacja działa za HTTPS. Ustaw 0, jeśli korzystasz z HTTP lokalnie.
|
||
ENABLE_HSTS=1
|
||
|
||
# ENABLE_XFO:
|
||
# Ustawia nagłówek X-Frame-Options: DENY, który blokuje osadzanie strony w <iframe>.
|
||
# Chroni przed atakami typu clickjacking. Ustaw 0, jeśli celowo korzystasz z osadzania.
|
||
ENABLE_XFO=1
|
||
|
||
# ENABLE_XCTO:
|
||
# Ustawia nagłówek X-Content-Type-Options: nosniff, który zapobiega sniffowaniu MIME przez przeglądarkę.
|
||
# Chroni przed błędną interpretacją typów plików (np. skrypt JS jako obraz). Zalecane: 1.
|
||
ENABLE_XCTO=1
|
||
|
||
# ENABLE_CSP:
|
||
# Ustawia podstawową politykę Content-Security-Policy (CSP), która ogranicza wczytywanie zasobów tylko z własnej domeny.
|
||
# Zalecane: 1. Ustaw 0, jeśli używasz zewnętrznych skryptów lub masz problemy z WebSocketami (w CSP: connect-src 'self').
|
||
ENABLE_CSP=1
|
||
|
||
# REFERRER_POLICY:
|
||
# Ustawia nagłówek Referrer-Policy, który kontroluje, ile informacji o źródle (refererze)
|
||
# jest przekazywane podczas nawigacji lub zapytań sieciowych.
|
||
# Domyślnie: strict-origin-when-cross-origin — pełny URL tylko w obrębie tej samej domeny,
|
||
# 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
|
||
DEBUG_MODE=1
|
||
|
||
# DISABLE_ROBOTS:
|
||
# Czy zablokować indeksowanie przez roboty (serwuje robots.txt z Disallow: /)
|
||
# Domyślnie: 0
|
||
DISABLE_ROBOTS=0
|
||
|
||
# ========================
|
||
# Nagłówki cache
|
||
# ========================
|
||
|
||
# JS_CACHE_CONTROL:
|
||
# Nagłówki Cache-Control dla plików JS (/static/js/)
|
||
# Domyślnie: "no-cache, no-store, must-revalidate"
|
||
JS_CACHE_CONTROL="no-cache, no-store, must-revalidate"
|
||
|
||
# CSS_CACHE_CONTROL:
|
||
# Nagłówki Cache-Control dla plików CSS (/static/css/)
|
||
# Domyślnie: "public, max-age=3600"
|
||
CSS_CACHE_CONTROL="public, max-age=3600"
|
||
|
||
# LIB_JS_CACHE_CONTROL:
|
||
# Nagłówki Cache-Control dla bibliotek JS (/static/lib/js/)
|
||
# Domyślnie: "public, max-age=604800"
|
||
LIB_JS_CACHE_CONTROL="public, max-age=604800"
|
||
|
||
# LIB_CSS_CACHE_CONTROL:
|
||
# Nagłówki Cache-Control dla bibliotek CSS (/static/lib/css/)
|
||
# Domyślnie: "public, max-age=604800"
|
||
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"
|
||
|
||
# DEFAULT_CATEGORIES:
|
||
# Lista domyślnych kategorii tworzonych automatycznie przy starcie aplikacji,
|
||
# jeśli nie istnieją w bazie danych.
|
||
# Podaj w formacie CSV (oddzielone przecinkami) – kolejność zostanie zachowana.
|
||
# Możesz dodać własne kategorie
|
||
# UWAGA: Wielkość liter w nazwach jest zachowywana, ale porównywanie odbywa się
|
||
# bez rozróżniania wielkości liter (case-insensitive).
|
||
# Domyślnie: poniższa lista
|
||
DEFAULT_CATEGORIES="Spożywcze,Budowlane,Zabawki,Chemia,Inne,Elektronika,Odzież i obuwie,Artykuły biurowe,Kosmetyki i higiena,Motoryzacja,Ogród i rośliny,Zwierzęta,Sprzęt sportowy,Książki i prasa,Narzędzia i majsterkowanie,RTV / AGD,Apteka i suplementy,Artykuły dekoracyjne,Gry i hobby,Usługi,Pieczywo"
|