Логи приложения в Docker
Логи приложения - это текст,
который скрипт напечатал,
пока сервис шёл в фоне.
Строка из console.log
не попадает в окно терминала
после up -d, но остаётся
в журнале службы.
При старте скрипт печатает
слово ready, затем
слушает порт 3000
и отдаёт hello:
const http = require('node:http');
console.log('ready');
const server = http.createServer((req, res) => {
res.end('hello');
});
server.listen(3000, '0.0.0.0');
Код лежит в образе.
Файл Dockerfile:
FROM node:24
WORKDIR /app
COPY server.js .
CMD ["node", "server.js"]
Сервис web собирается
и публикует порт 3000.
Файл compose.yaml:
services:
web:
build: .
ports:
- "3000:3000"
Сначала поднимем проект в фоне:
docker compose up -d --build
Затем прочитаем накопленный
текст службы web.
В журнале есть строка
ready рядом с сообщениями
запуска node:
docker compose logs web
Поднимите сервис lab в фоне со строкой boot при старте скрипта на порту 3000.
Найдите напечатанную строку в тексте службы lab.