Qu'y a-t-il d'installé sur votre serveur MEAN ?
- Un projet Angular 22 créé avec Angular CLI, SSR désactivé, dans /home/app/uygulama/istemci
- Express 5 et Mongoose 9, avec sunucu/server.js à l'écoute sur 127.0.0.1:3000
- Node.js 26 issu du dépôt NodeSource
- MongoDB 8.0 avec authentification activée, accessible uniquement depuis l'intérieur du serveur
- PM2 qui exécute un processus nommé uygulama, relancé après un redémarrage
- HTTPS via Caddy sur une adresse sslip.io basée sur votre IP : un domaine est donc facultatif
- Un fichier swap de 2 Go pour que les compilations Angular ne manquent pas de mémoire
- Un pare-feu où seuls les ports 22, 80 et 443 sont ouverts
Quelle taille faut-il pour MEAN ?
Il n'existe pas de chiffre officiel de RAM pour MEAN. En règle générale, 2 Go sont un bon départ pour un petit projet, et 4 Go pour un projet avec un trafic régulier ou que vous compilez sur le serveur. Les compilations Angular sont les plus gourmandes en mémoire : l'installation ajoute donc 2 Go de swap et fixe une limite mémoire Node.js de 1,5 Go pour les compilations. La plus petite taille est de 2 Go de RAM, 1 CPU et un disque de 20 Go. Si cela ne suffit pas, augmentez séparément la RAM, le CPU et le disque depuis votre panneau.
| Usage | Taille | Prix | Choisir |
|---|---|---|---|
| Démarrage | 2 GB RAM · 1 vCore · 40 GB NVMe | $4.01/mois | |
| Moyen | 4 GB RAM · 2 vCore · 60 GB NVMe | $6.89/mois | |
| Puissant | 8 GB RAM · 4 vCore · 120 GB NVMe | $13.62/mois |
Pour qui ?
- Projets avec un front-end Angular et une API Express prêts à être mis en ligne
- Toute personne qui déplace une application MEAN existante vers son propre serveur
- Équipes qui créent des outils internes ou des panneaux d'administration avec TypeScript et Angular
Que se passe-t-il après votre commande ?
- Réglez la taille et terminez votre paiement.
- Votre serveur démarre et la pile MEAN s'installe toute seule. Cela a pris environ 4 minutes lors de nos tests sur de vrais serveurs.
- Ouvrez l'Adresse du site depuis l'onglet Vue d'ensemble de votre panneau. Si la page d'exemple affiche MongoDB: OK, l'application atteint bien la base de données.
- Connectez-vous en SSH, passez à l'utilisateur app avec su - app, et placez votre code dans ~/uygulama/sunucu et ~/uygulama/istemci.
- Compilez Angular depuis le dossier istemci : npx ng build --output-path /home/app/uygulama/sunucu/public
- Lancez pm2 restart uygulama. Votre application doit écouter sur le port 3000.
Avec chaque serveur
- Sauvegardes quotidiennes incluses dans le prix
- Trafic illimité
- Accès root complet
- Augmentez ou réduisez la RAM et le CPU plus tard, et agrandissez le disque
- Emplacement : Istanbul · IST-1.
Bon à savoir
- En commandant, vous acceptez les conditions de la Server Side Public License (SSPL) de MongoDB.
- Express sert le résultat de la compilation Angular depuis sunucu/public/browser. Si vous changez le chemin de sortie, mettez aussi server.js à jour.
- La syntaxe des routes a changé dans Express 5 : les jokers doivent avoir un nom, et le point d'interrogation pour les paramètres optionnels a disparu. Relisez vos routes avant de reprendre du code Express 4.
- Garder Node.js, MongoDB et vos paquets npm à jour est à votre charge.
- Lancez pm2 save après avoir ajouté ou supprimé des processus, sinon l'ancienne liste revient après un redémarrage.
Questions et réponses sur MEAN
Comment déployer mon projet de pile MEAN ?
Connectez-vous en SSH et tapez su - app. Placez votre code Express dans ~/uygulama/sunucu et votre code Angular dans ~/uygulama/istemci. Lancez npm install dans les deux, compilez Angular, puis lancez pm2 restart uygulama. L'adresse de la base de données est MONGO_ADRES dans sunucu/.env.
De combien de RAM une pile MEAN a-t-elle besoin ?
Une pile MEAN n'a pas de chiffre officiel de RAM. En règle générale, 2 Go sont un bon départ pour un petit projet, et 4 Go pour un projet avec un trafic régulier. Si une compilation manque de mémoire, compilez Angular sur votre propre ordinateur et copiez le résultat.
Mon ancien projet Angular fonctionnera-t-il ici ?
Node.js 26 est installé sur le serveur. Angular 22 prend officiellement en charge les versions adaptées de Node 22, 24 et 26. Si une version plus ancienne d'Angular ne prend pas en charge Node 26, mettez le projet à niveau avec ng update.
Puis-je utiliser Angular SSR ?
Le projet d'exemple est créé avec SSR désactivé : Angular est compilé et Express sert les fichiers statiques. Pour ajouter SSR, lancez ng add @angular/ssr et démarrez le fichier serveur généré avec PM2. S'il écoute sur le port 3000, vous n'avez pas à modifier les paramètres de Caddy.
Comment accéder à MongoDB depuis mon ordinateur ?
MongoDB n'est pas ouverte vers l'extérieur. Ouvrez un tunnel SSH avec ssh -L 27017:127.0.0.1:27017 root@IP, puis saisissez mongodb://yonetici:[email protected]:27017/?authSource=admin dans Compass. Utilisez la ligne Mot de passe sous Identifiant pour MongoDB et celle sous Nom d'utilisateur pour SSH.
Comment relier mon propre domaine à un serveur MEAN ?
Faites pointer l'enregistrement A de votre domaine vers l'adresse IP du serveur. Remplacez l'ancien nom par votre domaine partout dans /etc/caddy/Caddyfile et lancez systemctl reload caddy en tant que root.