Zmienne środowiskowe to jeden z fundamentów nowoczesnego programowania. Umożliwiają przechowywanie wrażliwych danych (np. haseł, kluczy API) i konfiguracji w sposób bezpieczny i elastyczny, bez konieczności umieszczania ich w kodzie źródłowym.
1. Co to są zmienne środowiskowe?
Zmienne środowiskowe to pary klucz-wartość przechowywane w systemie operacyjnym. Mogą być wykorzystywane przez aplikacje do pobierania informacji o konfiguracji.
Przykład (Linux/macOS):
export DB_USER=admin
export DB_PASS=sekret123
2. Dlaczego warto ich używać?
- Bezpieczeństwo – dane uwierzytelniające nie trafiają do repozytorium kodu.
- Elastyczność – różne środowiska (dev, staging, produkcja) mogą mieć inne konfiguracje.
- Standaryzacja – łatwiejsze wdrożenia i automatyzacja (np. w Dockerze, CI/CD).
3. Jak korzystać ze zmiennych środowiskowych?
W Node.js
const user = process.env.DB_USER;
const pass = process.env.DB_PASS;
W PHP
$user = getenv('DB_USER');
$pass = getenv('DB_PASS');
W Pythonie
import os
user = os.getenv("DB_USER")
passw = os.getenv("DB_PASS")
4. Pliki .env
W wielu projektach stosuje się pliki .env, które przechowują konfigurację w formie tekstowej:
DB_USER=admin
DB_PASS=sekret123
Do ich obsługi służą biblioteki, np. dotenv (Node.js, Python, PHP).
5. Najlepsze praktyki
- Nigdy nie commituj plików
.env do repozytorium.
- Używaj menedżerów sekretów (np. Vault, AWS Secrets Manager).
- Oddziel konfigurację środowiska developerskiego od produkcyjnego.
- Regularnie zmieniaj hasła i klucze API.
Podsumowanie
Zmienne środowiskowe to podstawa bezpiecznego i skalowalnego programowania. Dzięki nim możesz oddzielić konfigurację od kodu i zapewnić swojej aplikacji większą elastyczność oraz bezpieczeństwo.