мы используем облачный запуск Google и монтируем наши журналы кода в хранилище файлов с помощью NFS, моя проблема заключается в том, что если журнал кода tomcat удаляется случайно, журналы из хранилища файлов не генерируются снова автоматически.
Мой докерфайл
ОТ tomcat: 8.5.77-jre8-openjdk-slim-buster
ЗАПУСК apt-get update -y && apt-get install -y
nfs-общий
сетевая база
&& apt-очистить
ЗАПУСК mkdir /usr/local/tomcat/webapps/маршрутизатор
ДОБАВЛЯТЬ . /usr/local/tomcat/webapps/маршрутизатор
Установить резервный каталог монтирования
ENV MNT_DIR /usr/local/tomcat/webapps/маршрутизатор/журналы
РАБОЧИЙ КАТАЛОГ /usr/local/tomcat/webapps/маршрутизатор
RUN chmod +x /usr/local/tomcat/webapps/router/run.sh
Используйте tini для управления зомби-процессами и пересылки сигналов ENV TINI_VERSION v0.19.0
ДОБАВЛЯТЬ https://github.com/krallin/tini/releases/download/${TINI_VERSION}/тини
/tini RUN chmod +x /tini ENTRYPOINT ["/tini", "--"]
Передайте сценарий запуска в качестве аргументов для tini
CMD ["/usr/local/tomcat/webapps/router/run.sh"]
ПОРТ ОК = 8080
ЭКСПОЗИЦИЯ 8080 ЭКСПОЗИЦИЯ 2049 ЭКСПОЗИЦИЯ 111
Мой файл сценария
#!/бин/баш
установить -eo pipefail
Создайте каталог монтирования или точку монтирования для службы контейнера.
chmod -R 777 /usr/local/tomcat/webapps/маршрутизатор/журналы
mount --verbose -t nfs -o vers=3 -o nolock 10.67.157.122:/filestore_vol1/test/testing/logss
/usr/local/tomcat/webapps/маршрутизатор/журналы
echo "Монтаж завершен."
покажи процесс монтирования
showmount -e 10.67.157.x
проверьте, какой каталог подключен к какому каталогу файлового хранилища.
дф-ч
создайте файл в каталоге монтирования или точке монтирования, который будет отображаться в
коснитесь /$MNT_DIR/dragon.js
chmod 777 /$MNT_DIR/dragon.js
коснитесь /usr/local/tomcat/webapps/router/logs/newdragon.js
/usr/local/tomcat/bin/catalina.sh запустить
Выйти сразу после завершения одного из фоновых процессов.
подожди -н