Введение в приложение Node в Docker
Приложение на компьютере коллеги падает, если у него другая версия Node, чем у автора. Такая среда живёт в системе и меняется от машины к машине, а скрипт рассчитывает на один и тот же набор возможностей.
Образ фиксирует среду: внутри
копии всегда одна и та же
версия node:24 и одна
команда node.
Проект не просит ставить Node
на диск хоста, а берёт готовый
шаблон из реестра.
Скрипт сервера слушает порт
и отвечает короткой строкой
без стороннего фреймворка.
В учебнике достаточно встроенного
модуля http и порта
3000.
Текст ответа на английском -
слово hello.
Сначала код можно подставить
томом при запуске, а затем
положить его в образ при сборке.
Шаг COPY в Dockerfile
кладёт server.js внутрь
шаблона, и отдельный том
для файла больше не нужен.
Файл package.json называет
проект и задаёт команду старта,
даже когда список пакетов
ещё пуст.
Шаг npm install при сборке
готовит каталог зависимостей
в образе, а запуск через
npm start берёт имя
скрипта из этого файла.
Описание compose.yaml
связывает сервис, порты
и сборку в одной папке.
Раздел собирает эти части
в одном проекте на node:24,
без стороннего фреймворка
и без базы данных.