Estoy en un Macbook Pro M2 usando la configuración del contenedor de desarrollo. El uso de memoria parece muy alto, ¿es esto típico? Veo alrededor de 4 GB de uso de memoria antes de ejecutar nada, luego necesito alrededor de 10 GB para completar una compilación exitosa y la aplicación completa en ejecución con alrededor de 8 GB.
Antes de que se compartiera la configuración oficial de Dev Container, tenía mi propio devcontainer.json que no utilizaba la imagen base discourse_dev. Utiliza solo 2 GB de RAM en reposo y 6 GB mientras ejecuta Discourse, así que tengo curiosidad por saber cuál podría ser la diferencia.
Imagen base: mcr.microsoft.com/devcontainers/base:debian-12
con estas “características”:
"features": {
"ghcr.io/rocker-org/devcontainer-features/apt-packages:1": {
"packages": "software-properties-common libpq-dev vim curl expect debconf-utils build-essential zlib1g-dev libssl-dev openssl libcurl4-openssl-dev libreadline6-dev libpcre3 libpcre3-dev imagemagick advancecomp jhead jpegoptim libjpeg-turbo-progs optipng pngcrush pngquant gnupg2"
},
"ghcr.io/devcontainers/features/ruby:1": {
"version": "3.3.4"
},
"ghcr.io/devcontainers/features/node:1": {
"version": "18",
"pnpmVersion": "9"
},
"ghcr.io/devcontainers/features/rust:1": {
"version": "1.75.0"
},
"ghcr.io/itsmechlark/features/redis-server:1": {},
"ghcr.io/devcontainers/features/go:1": {},
"ghcr.io/azutake/devcontainer-features/go-packages-install:0": {
"PACKAGES": "github.com/mailhog/MailHog@latest"
},
},
incluyendo otro servicio de contenedor de base de datos que ejecuta la imagen postgres:14
La imagen oficial tiene como objetivo simplificar el desarrollo empaquetando todo lo necesario para ejecutar Discourse de manera fluida, a costa de mayores requerimientos de memoria, y tu configuración personalizada parece tener un control detallado sobre las versiones y las bibliotecas instaladas.
¿También ves que la imagen de desarrollo utiliza entre 8 y 10 GB de RAM?
Ahora está en torno a 6 GB después de reiniciar todas las cosas, así que voy a asumir que eso es “típico” y culpar por cualquier cosa que vaya más allá de eso a una posible fuga de memoria en algún lugar en la pila de desarrollo (probablemente Docker Desktop).
This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.