Запись файлов журнала в Dode-контейнер NodeJS - PullRequest
0 голосов
/ 17 июня 2019

Я хочу записать файлы журнала в файловую систему хоста, чтобы он сохранялся, даже если контейнер Docker умирает.

Нужно ли монтировать том в моем yaml Docker?

VOLUME /var/log/myApp

Тогда я просто буду ссылаться на монтирование следующим образом?

var stream = fs.createWriteStream(`/var/log/myApp/myLog.log`);
stream.write('Hello World!');

Затем, за пределами моего контейнера, я могу перейти в каталог / var / log / myApp / и посмотреть мои журналы.

Я пытаюсь найти пример этого, но ничего не видел.

1 Ответ

2 голосов
/ 17 июня 2019

Когда вы настраиваете свой контейнер, вы просто используете аргумент -v:

-v ./path/to/local/directory:/var/log/myApp

Первый путь - это место, где том доступен в хост-системе (период в начале означаетэто относительно того, где вы запускаете команду docker).Путь справа находится там, где он доступен в контейнере.

Еще раз, в docker-compose:

    volumes:
        - "./path/to/local/directory:/var/log/myApp"

И да, это позволит хранить данные в томе.быть настойчивым.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...