Discourse Swap Memory (Avertissement 1 Go)

Hi,

I attempted to install Discourse on a digital ocean droplet with 1gb of RAM, the installer stated I should ideally be using 2gb of RAM, it mentionned swap files and that I could potentially run into problems with future upgrades.

Therefore is it safe to start with 1GB and if required upgrade the RAM later - would Discourse automatically use the additional RAM or would one need to amend the configuration in some way to allow for more RAM in future - and if so how?

You can run on the 1GB of ram to start with however I believe you would need a 2GB swap file to go with it in order to allow it to peak when doing resource intensive stuff such as upgrades etc.

If you have the 1GB Ram + 2GB Swap it should keep you going for a while thats for sure.

There are many posts on the forum about it so worth having a search through

If you let it, ./discourse-setup will create the swap file for you and configure the OS to try very hard never to use it.

Perhaps I should add the bolded words the message below?

En 2017, l’installation créait automatiquement un fichier d’échange (swap) lorsque vous n’aviez pas assez de mémoire RAM.

Il semble que même si vous ajoutez manuellement un fichier d’échange, l’installation ne se poursuive pas.

Je viens de tester une installation sur un nouveau droplet Digital Ocean de 1 Go en utilisant nos instructions d’installation cloud par défaut, et tout a fonctionné correctement :

root@delete-me-install-test:~# sudo -s
root@delete-me-install-test:~# git clone https://github.com/discourse/discourse_docker.git /var/discourse

Clonage dans '/var/discourse'...
remote: Énumération des objets : 41, terminé.
remote: Comptage des objets : 100% (41/41), terminé.
remote: Compression des objets : 100% (28/28), terminé.
remote: Total 4455 (delta 15), réutilisé 23 (delta 12), pack réutilisé 4414
Réception des objets : 100% (4455/4455), 968,00 Ko | 10,75 Mo/s, terminé.
Résolution des deltas : 100% (2833/2833), terminé.

root@delete-me-install-test:~# cd /var/discourse
root@delete-me-install-test:/var/discourse# ./discourse-setup

ATTENTION : Discourse nécessite au moins 2 Go d'espace d'échange (swap) lorsqu'il est exécuté avec 2 Go de RAM ou moins. Ce système ne semble pas disposer d'un espace d'échange suffisant.

Sans un espace d'échange suffisant, votre site pourrait ne pas fonctionner correctement, et les futures mises à niveau de Discourse pourraient ne pas se terminer avec succès.

Appuyez sur Ctrl+C pour quitter ou attendez 5 secondes pour qu'un fichier d'échange de 2 Go soit créé.
2097152+0 enregistrements lus
2097152+0 enregistrements écrits
2147483648 octets (2,1 Go, 2,0 GiB) copiés, 6,28174 s, 342 Mo/s
Configuration de l'espace d'échange version 1, taille = 2 GiB (2147479552 octets)
Aucune étiquette, UUID=2233bd64-65cf-4468-9548-ab7897657855
/swapfile       swap    swap    auto      0       0
vm.swappiness = 10
Les ports 80 et 443 sont libres pour utilisation
'samples/standalone.yml' -> 'containers/app.yml'
1 Go de mémoire et 1 cœur de processeur physique détectés
paramétrage de db_shared_buffers = 128Mo
paramétrage de UNICORN_WORKERS = 2
Paramètres mémoire de containers/app.yml mis à jour.

Nom d'hôte pour votre Discourse ? [discourse.example.com] :

Capture d’écran montrant le site en cours d’exécution à l’adresse IP :

Donc, je ne suis pas sûr de ce dont vous parlez.

Oui, très étrange. J’ai réessayé et cela a fonctionné comme vous l’avez montré.

J’utilise Amazon AWS sous Ubuntu 18.04. À cause du bug que j’avais, j’ai dû mettre à niveau mon instance pour obtenir 2 Go et pouvoir poursuivre la configuration.

Je me trouve dans une situation similaire. J’ai créé une instance Droplet de 2 Go avec Discourse chez DigitalOcean. J’ai ce message d’avertissement au démarrage de l’instance :

WARNING: Discourse requires at least 2GB of swap when running with 2GB of RAM
or less. This system does not appear to have sufficient swap space.

Mais la documentation de DigitalOcean recommande de ne pas créer d’espace d’échange (swap) pour une instance utilisant un SSD. Or la mienne utilise bien un SSD (comme toutes les instances, je suppose).

Je suis donc perplexe quant à la marche à suivre. Que me recommandez-vous ?

Si vous installez en suivant notre installation standard officielle de Discourse, nous configurerons automatiquement l’espace d’échange pour vous ; rien n’est à gérer manuellement.