# Dúvida sobre os requisitos de memória para instalação do Docker

**URL:** https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976
**Category:** Self-hosting
**Tags:** server-resources
**Created:** [Maio 19, 2020, 6:51pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976 "2020-05-19T18:51:42Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://meta.discourse.org/u/EricGT)
#### Post date: [Maio 19, 2020, 6:51pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/1 "2020-05-19T18:51:43Z")

</div>

Os requisitos mínimos de hardware para instalação [notas](https://github.com/discourse/discourse/blob/master/docs/INSTALL.md#hardware-requirements)

1 GB de RAM no mínimo (com [swap](https://meta.discourse.org/t/create-a-swapfile-for-your-linux-server/13880))

O link para as notas sobre swap [notas](https://meta.discourse.org/t/create-a-swapfile-for-your-linux-server/13880)

💡 Para servidores com \<= 2 GB de RAM, a execução de `./discourse-setup` solicitará e criará automaticamente um arquivo de swap de 2 GB.

* * *

Então, eis minha interpretação; se estiver errada, tenho certeza de que outros também estão pensando de forma equivocada.

Nota: Nunca instalei o Discourse em produção (fiz apenas uma instalação de desenvolvimento).

Se alguém solicitar a um provedor um servidor com 1 GB de RAM, entendo que, durante a instalação, o sistema alocará adicionalmente 2 GB para swap, totalizando 3 GB. E se o provedor limitar a máquina a 1 GB, você terá um problema.

Se alguém solicitar a um provedor um servidor com 3 GB de RAM, entendo que, durante a instalação, o sistema **NÃO** alocará adicionalmente 2 GB para swap, utilizando assim os 3 GB apenas para memória.

Se alguém solicitar a um provedor um servidor com 4 GB, pensando que precisa de 2 GB como memória normal e 2 GB como swap, seria a melhor opção usar os 4 GB como 2 GB para memória e 2 GB para swap?

Agora, no nosso caso, somos programadores Prolog e, por sermos de código aberto, temos outras opções, neste caso o [Laboratório de Código Aberto da OSU](https://osuosl.org/) (e também não temos orçamento, nunca).

Embora eu saiba que usar a Digital Ocean com contêineres Docker seja a escolha de muitos, a OSU OSL é a opção que estamos explorando atualmente.

Espero que você entenda onde estou confuso e possa esclarecer minhas dúvidas sobre a identificação da memória necessária e como configurá-la.

As comunicações relacionadas a isso estão acessíveis [aqui](https://swi-prolog.discourse.group/t/crossed-50k-pageviews-per-month-on-discourse/2258/36), caso deseje.

---

<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: [Maio 19, 2020, 6:59pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/2 "2020-05-19T18:59:12Z")

</div>

Informe que você precisa de um mínimo de 2 GB de RAM mais 2 GB de swap. Se permitirem que você crie o swap, 2 GB de RAM são suficientes e o `discourse-setup` o criará automaticamente. Se estiverem de acordo em fornecer 4 GB de RAM, será ainda melhor.

---

<div class="post-metadata">

### Author: ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://meta.discourse.org/u/EricGT)
#### Post date: [Maio 19, 2020, 7:16pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/3 "2020-05-19T19:16:11Z")

</div>

Desculpe, mas isso ainda me confunde.

Minha compreensão é que, ao criar uma VM, define-se um limite rígido de RAM, como 2 GB ou 4 GB. Embora minha experiência na configuração de VMs seja de décadas atrás, nunca me lembro de o processo de configuração da VM perguntar como a RAM deve ser utilizada.

Depois que o sistema operacional era instalado e executado, ele podia ser configurado para alocar parte da RAM como uma partição de swap.

* * *

Vamos analisar isso passo a passo.

Solicitamos 4 GB de RAM. Não perguntamos como ela deve ser configurada. Usando o acesso ao console web, criamos a máquina virtual nós mesmos e, no processo, seremos questionados sobre como dividir os 4 GB: 2 GB para uma partição de swap e os outros 2 GB como memória normal.

* * *

Para não percorrer uma série de opções, se o acima estiver correto, solicitaremos 4 GB e prosseguiremos. Caso contrário, podemos retomar a discussão com base na sua resposta.

Está correto? Se não, por favor, corrija-me.

---

<div class="post-metadata">

### Author: ![maiki](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/maiki/32/233950_2.png) [@maiki](https://meta.discourse.org/u/maiki)
#### Post date: [Maio 19, 2020, 8:19pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/4 "2020-05-19T20:19:20Z")

</div>

> [@EricGT](#):
>
> Se alguém solicitar um servidor com 1 GB de RAM ao provedor, entendo que, durante a instalação, o sistema alocará automaticamente mais 2 GB para swap, totalizando a necessidade de 3 GB. E se o provedor limitar a máquina a 1 GB, você terá um problema.
> 
> Se alguém solicitar um servidor com 3 GB de RAM ao provedor, entendo que, durante a instalação, o sistema **NÃO** alocará automaticamente mais 2 GB para swap, utilizando os 3 GB apenas para memória.
> 
> Se alguém solicitar um servidor com 4 GB, pensando que precisa de 2 GB de memória normal e 2 GB de swap, seria a melhor opção usar os 4 GB como 2 GB para memória e 2 GB para swap?

> [@EricGT](#):
>
> Pedimos 4 GB de RAM. Não perguntamos como ela será configurada. Usando o acesso ao console web, criamos a máquina virtual nós mesmos e, no processo, seremos questionados sobre dividir parte dos 4 GB em uma unidade de swap de 2 GB, deixando os outros 2 GB como memória normal.

Um “swap” é um arquivo em uma unidade de armazenamento.

> **[Memory paging | Swap files and partitions](https://en.wikipedia.org/wiki/Paging#Swap_files_and_partitions)**
>
> From the end-user perspective, swap files in versions 2.6.x and later of the Linux kernel are virtually as fast as swap partitions; the limitation is that swap files should be contiguously allocated on their underlying file systems. To increase performance of swap files, the kernel keeps a map of where they are placed on underlying devices and accesses them directly, thus bypassing the cache and avoiding filesystem overhead. When residing on HDDs, which are rotational magnetic media devi Swappin...

Só queria esclarecer isso, caso houvesse confusão.

Ao provisionar um servidor, você saberá quanto de RAM está disponível (em valores como 1 GB, 2 GB ou 4 GB), mas também terá armazenamento em disco, geralmente em quantidades maiores (como 20 GB, 30 GB ou 40 GB).

Seu swap fará parte do armazenamento em disco. Sua RAM é separada. 🕶

---

<div class="post-metadata">

### Author: ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://meta.discourse.org/u/EricGT)
#### Post date: [Maio 19, 2020, 8:21pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/5 "2020-05-19T20:21:10Z")

</div>

> [@maiki](#):
>
> Seu swap fará parte do armazenamento em disco. Sua RAM é separada.

Obrigado, isso responde ao que eu precisava.

@pfaffman Agora entendi sua resposta, obrigado pela resposta.

Como mencionei no outro post,

> Sei de onde veio meu problema: eu estava pensando no swap como parte da RAM mapeada como um arquivo, por exemplo, [unidade RAM](https://en.wikipedia.org/wiki/RAM_drive). Acho que é o preço que pago por normalmente usar Windows e não Linux.

---

<div class="post-metadata">

### Author: ![system](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/system/32/443519_2.png) [@system](https://meta.discourse.org/u/system)
#### Post date: [Junho 18, 2020, 8:35pm UTC](https://meta.discourse.org/t/clarification-needed-on-memory-requirements-for-docker-install/151976/6 "2020-06-18T20:35:34Z")

</div>

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.
