Initial vault setup
This commit is contained in:
@@ -0,0 +1,154 @@
|
||||
---
|
||||
title: Redict
|
||||
created: 2026-06-07
|
||||
updated: 2026-06-07
|
||||
type: app
|
||||
tags: [catalogue, database, redis, key-value, c, fork, codeberg, bsd]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=Database, https://codeberg.org/redict/redict]
|
||||
---
|
||||
|
||||
# 🗄️ Redict
|
||||
|
||||
> **Le fork indépendant de Redis** : un store clé/valeur in-memory compatible Redis, mais **100 % open source** et hébergé sur Codeberg. Né en réaction au changement de licence de Redis.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | (Codeberg) |
|
||||
| **Codeberg** | [redict/redict](https://codeberg.org/redict/redict) |
|
||||
| **License** | BSD-3-Clause |
|
||||
| **Langage** | C |
|
||||
| **Étoiles GitHub/Codeberg** | 351 ⭐ |
|
||||
| **Catégorie** | [[cat-database\|Database]] |
|
||||
| **Public** | Intermédiaires à avancés |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**Redict** est un **fork indépendant de Redis** maintenu sur **Codeberg** (pas GitHub — c'est un choix politique et technique du projet). Il est né en **2024**, peu après que Redis Inc. a basculé la licence de Redis 7.4+ vers la **RSALv2 / SSPLv1** (licences non-OSI, restrictives), ce qui a poussé une partie de la communauté à forker le code.
|
||||
|
||||
Pour bien comprendre le paysage : le **fork principal de Redis est [Valkey](https://github.com/valkey-io/valkey)** (sous Linux Foundation, MIT-like), très populaire. **Redict** est une **alternative communautaire distincte**, hébergée sur Codeberg pour des raisons idéologiques (indépendance vis-à-vis des grandes plateformes centralisées) et techniques. Les deux projets sont compatibles au niveau protocole avec Redis classique.
|
||||
|
||||
- ✅ **100 % open source** : BSD-3-Clause, pas de changement de licence à craindre
|
||||
- ✅ **Compatible protocole Redis** : les clients `redis-cli`, `redis-py`, `ioredis`, etc. fonctionnent tels quels
|
||||
- ✅ **Hébergé sur Codeberg** : gouvernance communautaire, hors GitHub
|
||||
- ✅ **Store clé/valeur in-memory** : latences sub-milliseconde
|
||||
- ✅ **Persistance RDB + AOF** : durable comme Redis
|
||||
- ✅ **Pub/Sub, Lua scripting, transactions** : API Redis complète
|
||||
- ✅ **Cluster mode** : sharding horizontal
|
||||
- ✅ **Modules Redis** : support de la plupart des modules existants
|
||||
- ✅ **Léger** : binaire C, faible empreinte mémoire comparé à Valkey
|
||||
- ✅ **Binaire statique** : déploiement trivial
|
||||
|
||||
**Public cible** : **les utilisateurs de Redis qui refusent la nouvelle licence restrictive** et préfèrent un projet 100 % libre, ou qui veulent soutenir un fork hébergé hors GitHub. Pour la majorité des cas, **Valkey est le choix par défaut** (plus gros écosystème, support de la Linux Foundation). Redict est l'alternative "indépendante et Codeberg-first".
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Docker Compose
|
||||
|
||||
```yaml
|
||||
# docker-compose.yml
|
||||
version: '3.8'
|
||||
services:
|
||||
redict:
|
||||
image: codeberg.org/redict/redict:latest
|
||||
container_name: redict
|
||||
restart: unless-stopped
|
||||
command: ["redict-server", "--save", "60", "1", "--appendonly", "yes"]
|
||||
ports:
|
||||
- "6379:6379"
|
||||
volumes:
|
||||
- redict-data:/var/lib/redict
|
||||
healthcheck:
|
||||
test: ["CMD", "redict-cli", "ping"]
|
||||
interval: 10s
|
||||
timeout: 3s
|
||||
retries: 5
|
||||
|
||||
volumes:
|
||||
redict-data:
|
||||
```
|
||||
|
||||
### Bare-metal (Linux)
|
||||
|
||||
```bash
|
||||
# Depuis les sources (Codeberg)
|
||||
git clone https://codeberg.org/redict/redict.git
|
||||
cd redict
|
||||
make -j$(nproc)
|
||||
sudo make install
|
||||
redict-server --daemonize yes
|
||||
```
|
||||
|
||||
### Package managé (Debian/Ubuntu)
|
||||
|
||||
```bash
|
||||
# Ajouter le repo officiel Redict
|
||||
echo "deb [signed-by=/usr/share/keyrings/redict.gpg] https://packages.redict.io/apt $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redict.list
|
||||
sudo apt update
|
||||
sudo apt install redict
|
||||
```
|
||||
|
||||
## ⚙️ Configuration Initiale
|
||||
|
||||
1. **Tester la connexion** : `redict-cli ping` → doit répondre `PONG`
|
||||
2. **Définir un mot de passe** : éditer `/etc/redict/redict.conf` (ou via env) avec `requirepass VOTRE_MOT_DE_PASSE`
|
||||
3. **Activer la persistance** : `appendonly yes` (AOF) + `save 60 1000` (RDB toutes les 60s si ≥1000 clés modifiées)
|
||||
4. **Sécuriser l'accès réseau** : `bind 127.0.0.1` par défaut ; ne pas exposer sur 0.0.0.0 sans auth forte
|
||||
5. **Monitoring** : `redict-cli info`, `redict-cli monitor` (debug uniquement), exporter vers Prometheus via `redict_exporter`
|
||||
6. **TLS (optionnel)** : `tls-port 6380` + certificats pour chiffrer le trafic client
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
|
||||
- **[Valkey](https://github.com/valkey-io/valkey)** — Le fork principal, sous Linux Foundation, MIT-like, **plus gros écosystème**
|
||||
- **KeyDB** — Fork historique de Redis (performances multi-thread), open source
|
||||
- **DragonflyDB** — Redis-compatible, très haute performance, single-node et clustered
|
||||
- **Memurai / Garnet** — Alternatives Microsoft
|
||||
- **Garnet** (Microsoft Research) — Redis-compatible en C#
|
||||
|
||||
### Comparaison Redict vs autres
|
||||
|
||||
| Critère | Redict | Valkey | Redis (nouveau) | KeyDB |
|
||||
| :--- | :--- | :--- | :--- | :--- |
|
||||
| **License** | BSD-3 | MIT-like | RSALv2 / SSPLv1 | BSD-3 |
|
||||
| **Open source OSI** | ✅ | ✅ | ❌ | ✅ |
|
||||
| **Hébergement** | **Codeberg** | GitHub | GitHub | GitHub |
|
||||
| **Sponsor** | Communauté | Linux Foundation | Redis Inc. | Snap (Meta) |
|
||||
| **Compatible Redis** | ✅ | ✅ | ✅ | ✅ |
|
||||
| **Multi-thread** | ❌ | ❌ | ❌ | ✅ |
|
||||
| **Maturité** | Jeune | Stable | Mature | Mature |
|
||||
| **Écosystème** | Petit | Grand | Très grand | Moyen |
|
||||
|
||||
**Verdict** : **Valkey est le choix par défaut** pour la plupart des cas (plus gros écosystème, gouvernance forte). **Redict** est l'alternative pour ceux qui veulent un projet 100 % indépendant et hébergé sur Codeberg. Si vous n'avez pas de raison spécifique, **migrez vers Valkey**.
|
||||
|
||||
### Propriétaires (ce que Redict remplace)
|
||||
|
||||
- **Redis Cloud** (managed, facturé à l'usage)
|
||||
- **Amazon ElastiCache for Redis** (AWS)
|
||||
- **Azure Cache for Redis** (Microsoft)
|
||||
|
||||
## 🔐 Sécurité
|
||||
|
||||
- **`requirepass`** : **obligatoire** en production, choisissez un mot de passe long
|
||||
- **Bind sur 127.0.0.1** par défaut, **jamais exposer** sur Internet sans auth + TLS
|
||||
- **TLS** : supporté nativement (`tls-port 6380`) — cf. [[securisation-home-lab]]
|
||||
- **Pas de commandes dangereuses** : `FLUSHALL`, `DEBUG`, `CONFIG` doivent être désactivées ou restreintes via `rename-command`
|
||||
|
||||
## 📚 Ressources
|
||||
|
||||
- [Codeberg redict/redict](https://codeberg.org/redict/redict)
|
||||
- [Documentation officielle](https://redict.io/docs/)
|
||||
- [Comparaison avec Valkey](https://redict.io/about/)
|
||||
|
||||
## Pages Liées
|
||||
|
||||
- [[cat-database]] — Catégorie Database
|
||||
- [[app-traefik]] — Reverse-proxy HTTPS
|
||||
- [[recettes-docker-compose]] — Templates Docker Compose
|
||||
- [[securisation-home-lab]] — Sécuriser l'accès aux services réseau
|
||||
- [[app-portainer]] — Gestion des containers Docker
|
||||
- [[app-dockge]] — Alternative UI à Portainer
|
||||
Reference in New Issue
Block a user