Initial vault setup
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
---
|
||||
title: VerneMQ
|
||||
created: 2026-06-08
|
||||
updated: 2026-06-08
|
||||
type: app
|
||||
tags: [catalogue, home-automation, app-marathon-batch-c]
|
||||
confidence: high
|
||||
contested: false
|
||||
sources: [https://selfh.st/apps/?tag=Home+Automation&app=vernemq, https://vernemq.com/]
|
||||
---
|
||||
|
||||
# 🏠 VerneMQ
|
||||
|
||||
> **Broker MQTT haute performance** : la colonne vertébrale messaging de votre domotique, écrit en Erlang pour la fiabilité télécom.
|
||||
|
||||
## 📋 Informations Générales
|
||||
|
||||
| Champ | Valeur |
|
||||
| :--- | :--- |
|
||||
| **Site web** | [vernemq.com](https://vernemq.com/) |
|
||||
| **GitHub** | [vernemq/vernemq](https://github.com/vernemq/vernemq) |
|
||||
| **License** | Apache-2.0 |
|
||||
| **Langage** | Erlang |
|
||||
| **Étoiles GitHub** | 3.3k ⭐ |
|
||||
| **Catégorie** | [[cat-home-automation\|Home Automation]] |
|
||||
|
||||
## 📝 Description
|
||||
|
||||
**VerneMQ** est un **broker MQTT** robuste conçu pour l'IoT et la domotique.
|
||||
|
||||
- ✅ **MQTT 3.1.1, 5.0** : protocole standard
|
||||
- ✅ **Clustering natif** : scaling horizontal Erlang/BEAM
|
||||
- ✅ **Auth plugins** : fichiers, HTTP, MySQL, PostgreSQL, MongoDB
|
||||
- ✅ **WebSockets** : pour dashboards web
|
||||
- ✅ **TLS/SSL** : chiffrement natif
|
||||
- ✅ **Bridge** : pont entre brokers
|
||||
- ✅ **Retained messages, QoS 0/1/2** : full MQTT spec
|
||||
- ✅ **Pub/Sub, Shared Subscriptions** : pour charges IoT
|
||||
- ✅ **Plugin Lua** : logique custom embarquée
|
||||
- ✅ **Métriques Prometheus**
|
||||
|
||||
**Différence vs Mosquitto** : Mosquitto = léger, single-node, parfait pour maison. VerneMQ = clustering, performance, production-grade. Pour qui: **installations avec beaucoup de devices** (>100), ou qui veulent scaler.
|
||||
|
||||
## 🚀 Installation
|
||||
|
||||
### Docker Compose (recommandé)
|
||||
|
||||
```yaml
|
||||
version: '3.8'
|
||||
services:
|
||||
vernemq:
|
||||
image: vernemq/vernemq:latest
|
||||
container_name: vernemq
|
||||
restart: unless-stopped
|
||||
environment:
|
||||
- DOCKER_VERNEMQ_ALLOW_ANONYMOUS=on
|
||||
- DOCKER_VERNEMQ_USER_vernemq=changeme
|
||||
- DOCKER_VERNEMQ_LISTENER__TCP__DEFAULT=0.0.0.0:1883
|
||||
- DOCKER_VERNEMQ_LISTENER__WS__DEFAULT=0.0.0.0:9001
|
||||
volumes:
|
||||
- vernemq_data:/vernemq/data
|
||||
- vernemq_log:/vernemq/log
|
||||
ports:
|
||||
- 1883:1883 # MQTT
|
||||
- 9001:9001 # WebSockets
|
||||
labels:
|
||||
- "traefik.enable=true"
|
||||
- "traefik.http.routers.vernemq.rule=Host(`mqtt.example.com`)"
|
||||
- "traefik.http.routers.vernemq.entrypoints=websecure"
|
||||
- "traefik.http.routers.vernemq.tls.certresolver=letsencrypt"
|
||||
|
||||
volumes:
|
||||
vernemq_data:
|
||||
vernemq_log:
|
||||
```
|
||||
|
||||
### Premier test (CLI)
|
||||
|
||||
```bash
|
||||
# Subscribe
|
||||
mosquitto_sub -h localhost -p 1883 -t "test/topic" -u vernemq -P changeme -v
|
||||
|
||||
# Publish
|
||||
mosquitto_pub -h localhost -p 1883 -t "test/topic" -u vernemq -P changeme -m "Hello MQTT"
|
||||
```
|
||||
|
||||
## 🔄 Alternatives
|
||||
|
||||
### Open Source
|
||||
- **Mosquitto** (Eclipse) — Référence, plus léger
|
||||
- **EMQX** — Concurrent direct, plus d'intégrations
|
||||
- **HiveMQ CE** — Broker Java entreprise
|
||||
- **RabbitMQ** (plugin MQTT) — Polyvalent mais pas MQTT natif
|
||||
|
||||
### Propriétaires
|
||||
- **AWS IoT Core** — Managed cloud MQTT
|
||||
- **Azure IoT Hub** — Managed, intégration Azure
|
||||
- **Google Cloud IoT** — Managed, en sunset
|
||||
- **HiveMQ Cloud** — SaaS HiveMQ
|
||||
|
||||
## 🔐 Sécurité
|
||||
- **Auth plugins** : ne JAMAIS laisser anonyme en production
|
||||
- **TLS** : obligatoire si exposé sur Internet
|
||||
- **ACL** : limiter topics par utilisateur (`vernemq.conf`)
|
||||
- **WebSockets** : attention exposition Internet, préférer TCP MQTT local
|
||||
- **Métriques Prometheus** : surveiller charge
|
||||
|
||||
## 📚 Ressources
|
||||
- [Documentation officielle](https://docs.vernemq.com/)
|
||||
- [Plugin docs](https://docs.vernemq.com/plugins/)
|
||||
- [Docker Hub](https://hub.docker.com/r/vernemq/vernemq)
|
||||
|
||||
## Pages Liées
|
||||
- [[cat-home-automation]] — Catégorie Home Automation
|
||||
- [[app-home-assistant]] — Utilisateur principal de MQTT
|
||||
- [[app-esphome]] — Device firmware qui publie sur MQTT
|
||||
- [[recettes-docker-compose]] — Templates Docker
|
||||
- [[mqtt-securite-best-practices]] — Hardening broker
|
||||
Reference in New Issue
Block a user