Скрипт сервера в Docker
Скрипт сервера слушает порт и отвечает строкой, без постороннего фреймворка. Модуль node:http принимает соединения и отдаёт тело ответа без шаблонов и маршрутизаторов.
Файл server.js слушает
порт 3000 и на любой
запрос отправляет слово
hello.
Код короткий и лежит рядом
с описанием проекта:
const http = require('node:http');
const server = http.createServer((req, res) => {
res.end('hello');
});
server.listen(3000);
Порт наружу пока не открываем:
браузер с хоста до процесса
ещё не дойдёт.
Скрипт с диска подставим
томом в /app/server.js,
рабочий каталог зададим
/app.
Файл compose.yaml
для сервиса app такой:
services:
app:
image: node:24
volumes:
- ./server.js:/app/server.js
working_dir: /app
command: ["node", "server.js"]
Подъём на переднем плане оставит процесс в работе, пока сеанс не прервут. Проверка здесь - по логам службы, без страницы в браузере. Запуск проекта:
docker compose up
Опишите сервис web на node:24 с томом для server.js и ответом ok вместо hello.
Поднимите проект на переднем плане и убедитесь, что процесс не завершился сразу.