Ceci est un VPS Ubuntu 24. Discourse utilise déjà 10 Go de RAM. Ce n’est pas acceptable.
Il semble qu’il construise une commande docker run. Bien que cela inclue
–shm-size=512m
Je préférerais appliquer des contraintes supplémentaires de CPU et de RAM car je ne veux pas qu’il consomme 4 cœurs et 12 Go de RAM puisque d’autres conteneurs y résideront. Puis-je simplement copier la commande résultante ou est-elle stockée quelque part ? Je prévois de faire docker stop, docker rm pour injecter
Ceci est une réponse fournie par ask.discourse.org. Veuillez évaluer son utilité.
1. Définir des limites persistantes de CPU et de RAM pour Discourse Docker
Lors de l’installation de Discourse sur un VPS via le guide officiel GitHub, les limites de ressources telles que --memory et --cpus ne sont pas incluses par défaut. Bien que vous puissiez ajouter manuellement de tels indicateurs à la commande docker run, toute modification effectuée directement avec docker stop et un nouveau docker run sera perdue après l’exécution de ./launcher rebuild app. Le script launcher recrée toujours le conteneur.
Approches recommandées :
a) Modification du script launcher
Pour appliquer de manière persistante les limites de ressources, vous devez modifier le script launcher que Discourse utilise pour démarrer les conteneurs Docker. Par exemple, autour de la ligne 289, adaptez :
b) Modification directe de la commande Docker
Bien qu’il soit techniquement possible d’exécuter Docker avec des limites personnalisées en copiant votre commande docker run reconstruite, cela n’est pas persistant et n’est pas recommandé.
Il n’existe pas encore de méthode “intégrée” officielle et persistante pour passer les arguments Docker --memory ou --cpus pour les outils de déploiement standard de Discourse, à moins de modifier le script launcher.
2. Nom du conteneur
Par défaut, le script launcher de Discourse nomme le conteneur app. Vous pouvez le confirmer avec docker ps. Changer le nom du conteneur nécessiterait également de modifier directement le script launcher ou les modèles.
En savoir plus : Discourse dans un conteneur Docker
Si vous recherchez une méthode plus élégante et persistante (comme un modèle ou une fonctionnalité prise en charge du script launcher), consultez cette discussion connexe : Interrupteurs pour VPS avec ressources limitées ?