Развертывание root-ресурса Tomcat не работает в Kubernetes (AKS)

Развертывание root-ресурса Tomcat не работает в Kubernetes (AKS)

У меня возникли проблемы при развертывании приложения Java .war в Tomcat на Kubernetes.

У меня есть образ Docker на основе tomcat:8.5.40-jre8, содержащий два веб-приложения Tomcat .war, одно в ROOT и одно с собственным путем. Когда я извлекаю и запускаю этот образ Docker локально на моем Mac, все работает просто отлично. Однако, когда я развертываю образ в нашей службе Microsoft Azure Kubernetes, веб-приложение ROOT отвечает только 404. Если я подключаю терминал к работающему контейнеру, я вижу, что Tomcat распаковал файл .war.

Проблема возникла, когда я обновил версию Kubernetes с помощью портала Azure, но когда я создал вторую службу Azure Kubernetes с более низкой версией, проблема все еще существовала.

Похоже, это не проблема сети. Когда я подключаю терминал к запущенному образу на Kubernetes и curl localhost, я получаю 404, но когда я делаю то же самое на своей локальной машине, я получаю ожидаемую страницу.

Тот же образ Docker работал раньше, и сейчас в кластере без каких-либо проблем запущена другая почти идентичная служба.

Как может быть, что образ Docker работает на моем компьютере, но не работает при развертывании в AKS?

Любая помощь будет высоко оценена! С наилучшими пожеланиями,

В

решение1

Оказывается, у приложения было ClassNotFoundException во время запуска. Это сделало приложение неспособным запуститься после обновления Kubernetes.

После исправления ошибки, обнаруженной в локальном журнале tomcat, приложение снова запускается.

Связанный контент