Installer MongoDB Community
MongoDB stocke des documents JSON (BSON), adapté aux APIs Node.js, analytics ou caches structurés. Sur un VPS Linux HolyCloud Ubuntu/Debian, l'installation passe par le dépôt officiel MongoDB Inc. — ce guide couvre l'installation, la configuration minimale, l'authentification et le pare-feu.
Prérequis
- VPS HolyCloud Ubuntu 22.04/24.04 (guide testé sur Ubuntu ; Debian nécessite le dépôt adapté)
- Au moins 2 Go RAM (4 Go recommandé en production)
- Accès sudo
- Snapshot HolyCloud avant exposition du port 27017
- WiredTiger est le moteur par défaut (inclus)
Conseil : liez
mongodà127.0.0.1sauf besoin explicite d'accès distant filtré par IP.
Étape 1 : dépendances et clé GPG
sudo apt update
sudo apt install -y gnupg curl ca-certificates
Import de la clé MongoDB 7.0 (vérifiez la documentation MongoDB pour la version courante) :
curl -fsSL https://pgp.mongodb.com/server-7.0.asc | \
sudo gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor
Étape 2 : dépôt APT
Ubuntu 22.04 (jammy) :
echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu jammy/mongodb-org/7.0 multiverse" | \
sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list
Ubuntu 24.04 (noble) — remplacez jammy par noble si le dépôt 7.0 le supporte ; sinon utilisez la série documentée pour votre version.
sudo apt update
sudo apt install -y mongodb-org
Paquets installés :
dpkg -l | grep mongodb-org
Étape 3 : démarrage et service
sudo systemctl enable --now mongod
sudo systemctl status mongod
Fichier de log :
sudo tail -30 /var/log/mongodb/mongod.log
Étape 4 : configuration de base
sudo cp /etc/mongod.conf /etc/mongod.conf.bak.$(date +%F)
sudo nano /etc/mongod.conf
Extrait recommandé pour un VPS web/API :
storage:
dbPath: /var/lib/mongodb
systemLog:
destination: file
logAppend: true
path: /var/log/mongodb/mongod.log
net:
port: 27017
bindIp: 127.0.0.1
processManagement:
timeZoneInfo: /usr/share/zoneinfo
sudo systemctl restart mongod
sudo ss -tlnp | grep 27017
Étape 5 : activer l'authentification
Connexion locale sans auth (première fois) :
mongosh
Dans mongosh :
db.getSiblingDB('admin').createUser({
user: 'adminMongo',
pwd: 'MotDePasseFortIci!',
roles: [ { role: 'root', db: 'admin' } ]
})
db.getSiblingDB('monapp').createUser({
user: 'appUser',
pwd: 'MotDePasseAppIci!',
roles: [ { role: 'readWrite', db: 'monapp' } ]
})
exit
Activez la sécurité dans /etc/mongod.conf :
security:
authorization: enabled
sudo systemctl restart mongod
mongosh -u adminMongo -p --authenticationDatabase admin
Étape 6 : pare-feu et accès distant (optionnel)
Par défaut, ne ouvrez pas 27017 sur Internet. Si une app distante doit se connecter :
sudo ufw allow from IP_APP_AUTORISEE to any port 27017 proto tcp
Dans mongod.conf, ajoutez l'IP locale du VPS ou 0.0.0.0 uniquement avec pare-feu strict :
net:
bindIp: 127.0.0.1,10.0.0.2
Étape 7 : sauvegarde logique
mongodump --uri="mongodb://appUser:[email protected]:27017/monapp" --out=/var/backups/mongo-$(date +%F)
tar -czf /var/backups/mongo-$(date +%F).tar.gz /var/backups/mongo-$(date +%F)
Restauration test :
mongorestore --uri="mongodb://appUser:[email protected]:27017" --drop /var/backups/mongo-$(date +%F)/monapp
Vérification
systemctl is-active mongod
mongosh --eval 'db.runCommand({ connectionStatus: 1 })' -u appUser -p --authenticationDatabase monapp
sudo ss -tlnp | grep 27017
bindIp doit refléter votre politique (souvent 127.0.0.1 seul).
Besoin d'aide HolyCloud
- apt ne trouve pas le paquet : mauvaise série Ubuntu dans le
.list mongodcrash au démarrage : permissionsdbPath, espace disquedf -h, log/var/log/mongodb/mongod.log- Auth failed : utilisateur créé avant
authorization: enabled— recréez via localhost - Support HolyCloud :
mongod --version, extrait log, RAMfree -h