# Quelle quantité de RAM est nécessaire pour héberger Discourse ainsi que d'autres services?

**URL:** https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751
**Category:** Self-hosting
**Tags:** unsupported-install, hosting
**Created:** [Novembre 20, 2020, 2:53 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751 "2020-11-20T14:53:26Z")
**Posts on this page:** 9
**Page:** 1

<div class="post-metadata">

### Author: ![Hady\_Ibrahim](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hady_ibrahim/32/200690_2.png) [@Hady\_Ibrahim](https://meta.discourse.org/u/Hady_Ibrahim)
#### Post date: [Novembre 20, 2020, 2:53 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/1 "2020-11-20T14:53:26Z")

</div>

Sur les forums de Discourse, j’ai lu que 1 Go et jusqu’à 2 Go de mémoire devraient suffire, cependant, ces deux options ne font pas fonctionner mon site web de manière fluide. Lorsque j’exécute mon fichier docker-compose avec 4 Go de mémoire, il fonctionne à environ 90-95 %, ce qui est beaucoup. Les autres éléments dans le fichier docker-compose sont un site web statique en HTML que j’ai créé et un proxy nginx. Pourriez-vous s’il vous plaît me dire s’il existe une astuce ou des paramètres dans Discourse pour le faire fonctionner plus fluidement avec moins de RAM ?

---

<div class="post-metadata">

### Author: ![marianord](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/marianord/32/90502_2.png) [@marianord](https://meta.discourse.org/u/marianord)
#### Post date: [Novembre 20, 2020, 3:54 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/2 "2020-11-20T15:54:29Z")

</div>

Vous devez ajuster le nombre de workers et le tampon de la base de données. Les options à ajuster sont donc :

- `db_shared_buffers`
- `UNICORN_WORKERS`

Voici les estimations d’utilisation par Unicorn :

> [@Normal RAM Usage](https://meta.discourse.org/t/normal-ram-usage/50630/5?u=marianord):
>
> Yes, that’s normal. What you can do is tune down the unicorn workers number. In one instance I have: 280MB per unicorn worker 200MB sidekiq 180MB unicorn master I guess going from 4 workers to 2 can shave you some memory. PS: I’m assuming that you are running a ghost town, when you get more users revisit this.

Discourse peut fonctionner avec 512 Mo de RAM ; ce n’est pas une expérience optimale, mais c’est possible. Votre _problème_ est que Discourse analyse les ressources du serveur (en tant que nœud complet) et planifie l’utilisation des ressources pour en tirer le meilleur parti, car Discourse suppose qu’il s’exécutera seul.

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [Novembre 20, 2020, 3:58 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/3 "2020-11-20T15:58:50Z")

</div>

Pouvez-vous partager le fichier docker-compose ici afin que nous puissions faire des suggestions appropriées ?

---

<div class="post-metadata">

### Author: ![Hady\_Ibrahim](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/hady_ibrahim/32/200690_2.png) [@Hady\_Ibrahim](https://meta.discourse.org/u/Hady_Ibrahim)
#### Post date: [Novembre 20, 2020, 4:05 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/4 "2020-11-20T16:05:04Z")

</div>

Voici le fichier docker-compose. J’ai dû retirer certains liens d’images car je ne peux pas en poster plus de deux, mais cela devrait suffire. Où devrais-je placer la variable d’environnement du tampon de la base de données ?

```
version: '2'
services:
  nginx:
    image: ''
    #image: 'itshady/nginx'
    ports:
      - '80:80'
    depends_on:
      - discourse
  intellectus:
    image: '
# image: 'itshady/intellectus'
    ports:
      - '90:80'
  postgresql:
    image: ''
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      #- './data/postgresql:/bitnami/postgresql'
      - 'postgresql_data:/bitnami/postgresql'
  redis:
    image: ''
    environment:
      - ALLOW_EMPTY_PASSWORD=yes
    volumes:
      - 'redis_data:/bitnami'
  discourse:
    image: 'docker.io/bitnami/discourse:2-debian-10' #2-debian-10
    ports:
      - '100:3000'
    depends_on:
      - postgresql
      - redis
    volumes:
      - './data/discourse:/bitnami'
    environment:
      - POSTGRESQL_HOST=postgresql
      - POSTGRESQL_ROOT_USER=postgres
      - POSTGRESQL_CLIENT_CREATE_DATABASE_NAME=bitnami_application
      - POSTGRESQL_CLIENT_CREATE_DATABASE_USERNAME=bn_discourse
      - POSTGRESQL_CLIENT_CREATE_DATABASE_PASSWORD=bitnami1
      - DISCOURSE_POSTGRESQL_NAME=bitnami_application
      - DISCOURSE_POSTGRESQL_USERNAME=bn_discourse
      - DISCOURSE_POSTGRESQL_PASSWORD=bitnami1
      #- DISCOURSE_HOSTNAME=forums.intellectus.ca
      - DISCOURSE_HOSTNAME=${FORUM_URL}
      - DISCOURSE_EMAIL=
      - SMTP_HOST=
      - SMTP_PORT=
      - SMTP_USER=
      - SMTP_PASSWORD=
  sidekiq:
    image: 'docker.io/bitnami/discourse:2-debian-10'
    depends_on:
      - discourse
    volumes:
      - './data/discourse:/bitnami'
    command: 'nami start --foreground discourse-sidekiq'
    environment:
      - DISCOURSE_POSTGRESQL_NAME=bitnami_application
      - DISCOURSE_POSTGRESQL_USERNAME=bn_discourse
      - DISCOURSE_POSTGRESQL_PASSWORD=bitnami1
      - DISCOURSE_HOST=discourse
      - DISCOURSE_PORT=3000
      #- DISCOURSE_HOSTNAME=forums.intellectus.ca
      - DISCOURSE_HOSTNAME=${FORUM_URL}
      - SMTP_HOST=
      - SMTP_PORT=
      - SMTP_USER=
      - SMTP_PASSWORD=
volumes:
  postgresql_data:
    driver: local
# external: true
  redis_data:
    driver: local
# external: true
  discourse_data:
    driver: local
# external: true

```

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Novembre 20, 2020, 4:46 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/5 "2020-11-20T16:46:05Z")

</div>

Si vous entourez votre code brut avec des lignes contenant uniquement ```, il sera beaucoup plus facile à lire.

> [@Hady\_Ibrahim](#):
>
> image : ‘[docker.io/bitnami/discourse:2-debian-10](http://docker.io/bitnami/discourse:2-debian-10)’ #2-debian-10

En première étape, je vous recommande d’utiliser `./launcher` pour construire et lancer votre instance Discourse. Si vous le souhaitez, vous pouvez utiliser `./launcher` pour la construire, puis la lancer avec `docker-compose` (du moins, j’ai procédé de manière similaire pour construire et lancer des images Discourse avec Kubernetes).

---

<div class="post-metadata">

### Author: ![Falco](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/falco/32/179432_2.png) [@Falco](https://meta.discourse.org/u/Falco)
#### Post date: [Novembre 20, 2020, 5:27 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/6 "2020-11-20T17:27:14Z")

</div>

Vous utilisez des images Bitnami, qui ne sont pas du tout prises en charge par les mainteneurs de Discourse et qui utiliseront probablement plus de RAM que l’[installation standard officielle de Discourse](https://meta.discourse.org/t/discourse-official-standard-installation/142537).

---

<div class="post-metadata">

### Author: ![henvo](https://avatars.discourse-cdn.com/v4/letter/h/dfb087/32.png) [@henvo](https://meta.discourse.org/u/henvo)
#### Post date: [Mai 17, 2024, 11:48 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/7 "2024-05-17T23:48:00Z")

</div>

pourquoi les images bitnami sont-elles toujours si populaires ?

je réponds moi-même à ma question, il semble que bitnami soit la seule option docker idiomatique, où les builds sont déterministes et centrées autour des variables d’environnement. Discourse utilise docker par défaut mais le traite davantage comme des amorces pour les systèmes de build traditionnels qui vous obligent à vous connecter en ssh et à configurer/maintenir depuis le terminal.

---

<div class="post-metadata">

### Author: ![pfaffman](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/pfaffman/32/120154_2.png) [@pfaffman](https://meta.discourse.org/u/pfaffman)
#### Post date: [Mai 18, 2024, 9:18 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/8 "2024-05-18T09:18:46Z")

</div>

C’est exact. Si vous voulez de l’aide ici, vous suivez l’installation standard. Si vous voulez de l’aide de Bitnami, vous pouvez utiliser leur image.

---

<div class="post-metadata">

### Author: ![fokx](https://avatars.discourse-cdn.com/v4/letter/f/958977/32.png) [@fokx](https://meta.discourse.org/u/fokx)
#### Post date: [Mai 18, 2024, 10:44 UTC](https://meta.discourse.org/t/how-much-ram-is-needed-to-host-discourse-along-with-other-services/170751/9 "2024-05-18T10:44:23Z")

</div>

Je suppose que vous voudrez peut-être lire ceci :

> [@Can Discourse ship frequent Docker images that do not need to be bootstrapped?](https://meta.discourse.org/t/can-discourse-ship-frequent-docker-images-that-do-not-need-to-be-bootstrapped/33205):
>
> There is this [open issue](https://github.com/discourse/discourse_docker/issues/186) (which I just closed) on Discourse Docker repo asking Discourse should behave like a standard docker image a docker user excepts to be able to run discourse without a special launcher. to define multiple containers (redis, postgres, discourse,…), links and volumes, docker-compose should be used instead. [Docker Compose overview | Docker Docs](https://docs.docker.com/compose/) The question is somewhat misguided, but I would like to address a broader one of Can Discourse ship frequent Docker images …
