Redis to in-memory key-value, szeroko używany do cache, sesji WWW, kolejek (z odpowiednimi bibliotekami) i limitowania żądań. Instalujemy Redis na Ubuntu/Debian z domyślnym dostępem tylko lokalnym (zalecane).
Wymagania
- VPS z
sudo - Ubuntu 20.04+ lub Debian 11+
Instalacja
Bash1sudo apt update && sudo apt upgrade -y 2sudo apt install -y redis-server 3sudo systemctl enable redis-server 4sudo systemctl start redis-server 5sudo systemctl status redis-server
Szybki test
Bashredis-cli ping
Oczekiwane: PONG.
Bashredis-cli SET test "hello" redis-cli GET test
Główny plik konfiguracji
Na Debian/Ubuntu często /etc/redis/redis.conf.
Ważne opcje:
bind: często127.0.0.1 ::1— zostaw tylko localhost, jeśli aplikacja jest na tym samym serwerze.protected-mode yes: zostaw włączone, chyba że masz uwierzytelnianie i reguły ekspozycji.supervised systemd: integracja z systemd (zależnie od wersji pakietu).
Po zmianach:
Bashsudo systemctl restart redis-server
Hasło (zalecane przy szerszym dostępie sieciowym)
W redis.conf:
Configrequirepass your_long_password
Połączenie:
Bashredis-cli -a 'your_long_password' ping
Nigdy nie commituj haseł do Gita; używaj zmiennych środowiskowych.
Pamięć i trwałość
- maxmemory: ogranicz RAM na małym VPS (np.
maxmemory 256mbzmaxmemory-policy allkeys-lruprzy samym cache). - RDB/AOF: Redis może zapisywać na dysk; przy czystym cache w pamięci można ograniczyć trwałość (świadomie akceptuj ryzyko utraty danych).
Bezpieczeństwo
- Nie wystawiaj Redis do Internetu bez tunelu, VPN lub bardzo restrykcyjnego firewalla.
- Łącz z UFW dla innych publicznych portów.
Parametry połączenia w aplikacji
Typowy adres lokalny:
TEXTredis://127.0.0.1:6379
Z hasłem:
TEXTredis://:[email protected]:6379
Rozwiązywanie problemów
- Connection refused: usługa zatrzymana lub zły port;
sudo systemctl status redis-serveriss -tlnp | grep 6379. - OOM: obniż
maxmemorylub dodaj RAM.