Dockerfile не имеет ничего общего с ограничением памяти или чем-либо еще, связанным с ресурсами.
AWS рекомендует 300-500 МБ для каждого контейнера,
Итак, теперь, согласно вашей локальной системе, память зависит от приложения и запроса в секунду. Для вышеупомянутого контейнера я только что изменил ваш Dockerfile и у меня есть nodejs и простое экспресс-приложение, занимающее 34 МБ памяти в состоянии ожидания без какого-либо запроса.
FROM node:10.16.0-jessie-slim
#Maitainer
MAINTAINER Rajath
run apt-get -y update && apt-get install -y git-core
RUN git clone https://github.com/IBM-Bluemix/bluemix-hello-node /app
WORKDIR /app
RUN npm install
EXPOSE 3000
CMD ["npm", "start"]
Так что здесь вы можете запустить docker stats
, чтобы проверить память и ЦП, занятые контейнером, и максимальный объем памяти, который может быть выделен. 34 МБ контейнером nodejs и максимум 15 ГБ.
Так что все это основано на докере, теперь для дальнейшего изучения вы можете использовать portainer для подробных журналов portainer
docker volume create portainer_data
docker run -d -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer
После того, как вы загрузите, вы можете проверить
http://localhost:9000/#/containers/
Память в режиме ожидания
Процессор в состоянии ожидания
После небольшой загрузки теста
Итак, теперь вопрос в том, играет ли базовый образ роль в памяти? ответ: Да , с небольшой модификацией и установкой базового образа на Alpine , и есть разница в 10MB
в памяти контейнера, базовое изображение alpine
берется из 25MB
до
30MB
где, node:10.16.0-jessie-slim
взятие от 34MB
до 40MB
изменил вышеупомянутое изображение, установите базовое изображение в альпийское, которое является самым светлым изображением.
#Getting base image
#FROM node:10.16.0-jessie-slim
FROM node:alpine
#Maitainer
run apk add --no-cache git
MAINTAINER Rajath
#run apt-get -y update && apt-get install -y git-core
RUN git clone https://github.com/IBM-Bluemix/bluemix-hello-node /app
WORKDIR /app
RUN npm install
EXPOSE 3000
CMD ["npm", "start"]
Альпийское базовое изображение на скриншоте, занимающее 28 МБ