Использование пользовательской строки команды завершения работы в Tomcat без изменения файла server.xmlLinux

Ответить
Anonymous
 Использование пользовательской строки команды завершения работы в Tomcat без изменения файла server.xml

Сообщение Anonymous »

У меня есть развертывание Kubernetes Tomcat со свойством readOnlyRootFilesystem: true, которое запрещает мне изменять файл server.xml. Но мне нужно использовать случайный порт выключения каждый раз при запуске tomcat в соответствии с нашей практикой безопасности.
Чтобы добиться этого, я установил строку завершения Java-переменной tomcat внутри catalina.sh

Код: Выделить всё

SHUTDOWN_STRING=$(openssl rand -base64 29 | tr -d "=+/1234567890" | cut -c1-8) CATALINA_OPTS="$CATALINA_OPTS -DSHUTDOWN_STR=$SHUTDOWN_STRING"
а затем использовать его в моем файле server.xml как Shutdown="${SHUTDOWN_STR}"
проблема в том, что он генерирует случайную строку каждый раз, когда запускается скрипт catalina.sh, и поэтому при его остановке перезаписывает случайную строку, сгенерированную при запуске, и я получаю ошибку, которая

Код: Выделить всё

Invalid shutdown command abcdEGFS received
и когда я вижу свой процесс Tomcat, -DSHUTDOWN_STR=nbgyhgEF
Поэтому я помещаю CATALINA_OPTS внутри стартового блока

Код: Выделить всё

elif [ "$1" = "start" ] ;  then

Код: Выделить всё

SHUTDOWN_STRING=$(openssl rand -base64 29 | tr -d "=+/1234567890" | cut -c1-8) CATALINA_OPTS="$CATALINA_OPTS -DSHUTDOWN_STR=$SHUTDOWN_STRING"
но в этом случае, хотя я вижу, что в моем процессе Tomcat переменная устанавливается как -DSHUTDOWN_STR=FGtrFvhg во время остановки, я получаю ошибку, которая
Invalid shutdown command [${SHUTDOWN_STR}] received.

Подробнее здесь: https://stackoverflow.com/questions/787 ... r-xml-file
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Linux»