Развертывание WAR в OpenShift

0

У меня есть Java.war файл, который мне нужно разместить с помощью mysql DB. Может ли кто-нибудь помочь с точной процедурой его размещения в OpenShift? И как сделать подключение из приложения в БД?

Теги:
openshift
.war

1 ответ

0

Предполагая, что вы используете Maven для создания приложения, и вы запускаете его в OpenShift Online, вы можете использовать встроенный шаблон Java. Используйте "Добавить в проект" и выберите "Java" и выберите "Открыть JDK". Он запрашивает имя и адрес git для вашего кода. Вы должны начать с использования git url, который предлагает увидеть, как их код кода создается maven и запускается на Openshift.

Если вам не нравится то, как их код строит/запускает, я написал демоверсию Java, которая строит WAR, а затем сообщает Openshift о запуске WAR с помощью tomcat7-maven-plugin. В файле POM есть профиль maven, который использует tomcat7 для запуска WAR, который вы можете увидеть здесь. Этот профиль включен по умолчанию в стандартном шаблоне Openens Open OpenJDK.

После запуска вашего Java-кода рекомендуется развернуть базу данных MySQL в качестве отдельного компонента/службы в вашем проекте. Таким образом, вы можете масштабировать свои Java-модули независимо от вашей базы данных. Снова вы можете использовать встроенные шаблоны Openshift Online. Выберите "Добавить в проект", "Хранилища данных", "MySQL (Persistent)" и используйте значения по умолчанию.

Последняя часть - это то, как подключить ваше приложение Java к вашей базе данных. Здесь вы находитесь в очень надежных руках с OpenShift. Как мы видим, здесь OpenShift имеет в качестве внутреннего DNS, который публикует IP любого сервиса. Когда я запустил шаблон mysql, он был разбит как служба "mysql". Затем он публикуется в DNS как <service>.<pod_namespace>.svc.cluster.local. Pod_namespace - это проект с открывающейся сменой. Поэтому в моем случае мой демонстрационный код OpenShift-проект называется thinbus-srp-spring-demo поэтому Java-модуль может подключиться к службе mysql, используя DNS-имя mysql.thinbus-srp-spring-demo.svc.cluster.local. Поэтому я могу настроить это как имя узла базы данных в строке подключения JDBC.

Эти инструкции - как использовать мышь, и предполагается, что вы используете экземпляр OpenShift с установленными шаблонами OpanJDK и MySql. На самом деле вам этого не нужно. Вы можете создать свой собственный шаблон, в котором есть все решение. Это довольно продвинутая тема, поэтому я не буду рассказывать об этом в этом ответе.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню