Статьи

Приложение Java EE 7 в OpenShift 3 с помощью инструментов JBoss

Вы можете создавать приложения OpenShift и управлять ими в Eclipse с помощью последней версии плагина OpenShift для JBoss Tools. Они либо в комплекте с последним

JBoss Developer Studio (9.0.0.GA) или вы можете установить их в существующий Eclipse Mars. В этом посте рассказывается о развертывании практической лаборатории Java EE 7 в OpenShift с помощью JBoss Developer Studio.

Обзор инструментов OpenShift 3

Инструменты OpenShift 3 включены в TechPreview. Это позволит вам подключаться к серверам OpenShift 3 с помощью OAuth или Basic-аутентификации, управлять проектами OpenShit 3, развертывать новые приложения в облаке, используя предопределенные (или ваши собственные) шаблоны, или даже изображения Docker. Вы сможете импортировать существующие приложения в свою рабочую область, отслеживать их с помощью удаленной потоковой передачи журналов непосредственно в локальную консоль или включить перенаправление портов и получать доступ к их данным, как если бы они были локальными.

Начать

Установите универсальную виртуальную машину OpenShift 3 и запустите локальный экземпляр с помощью vagrant. Войдите через утилиту командной строки oc через admin / admin и получите свой токен OAuth:

1
2
oc login https://localhost:8334
oc whoami -t

И пока мы находимся в командной строке, давайте создадим новый проект OpenShift для этого примера.

1
oc new-project javaeehol --display-name="Java EE 7 HOL w/ WildFly MySql"

1_create_os3_connection

Установите и запустите вашу JBoss Developer Studio . Если вы хотите начать работу с JBoss Tools в существующем дистрибутиве Eclipse, используйте этот пакет на торговой площадке Eclipse .

Создайте новый проект OpenShift. Выберите OpenShift 3 в качестве типа сервера, измените сервер на https: // localhost: 8443 и введите токен, который вы собрали из cli, в поле токена. Когда вы нажимаете «Далее», учетные данные проверяются, и вам необходимо принять предупреждение о неподписанном сертификате при использовании многофункционального виртуального компьютера.

Выберите проект из первого выпадающего списка в следующем диалоге. Диалог также перечисляет все доступные шаблоны на вашем сервере. Полный список можно найти на github . Мы хотим использовать наш собственный шаблон в этом случае. Практическая лаборатория Java EE 7 была преобразована Беном Паресом в шаблон Kubernetes. Итак, мы собираемся использовать это. Загрузите его из репозитория Ben’s Github и сохраните его локально.

Откройте его в текстовом редакторе и измените значение «apiVersion» с v1beta3 на «v1». И в строке 47 находится запись хоста, которая говорит: «www.example.com», замените это на «jee-sample.openshiftdev.local». И пока вы находитесь в текстовом редакторе, обязательно добавьте в ваш файл hosts запись, которая отображает петлевой интерфейс на измененное имя домена.

1
127.0.0.1 jee-sample.openshiftdev.local

Теперь вернемся к JBDS.

jbds-eap7-сервер
Выберите «Использовать шаблон из моей локальной файловой системы» и найдите место, где вы его сохранили.

После нажатия кнопки «Далее» вы увидите другой диалог, который позволяет изменить значения параметров шаблона для различных паролей. Оставьте все как есть и снова нажмите «Далее».

Следующий диалог позволит вам добавить дополнительные метки. Просто нажмите «Готово» сейчас.

Последний диалог дает вам обзор выполненных действий и сгенерированных паролей. Обязательно запишите их на случай, если они понадобятся вам позже.

Вы также можете получить доступ к секретам и URL-адресам веб-хука github. После нажатия «ОК» последний мастер клонирует приложение из github в папку по вашему выбору локально. Он открывается в JBDS, и вы можете просматривать различные ресурсы и немного изучить пример. Пока вы это делаете, OpenShift фактически запустил сборку примера приложения. Когда вы указываете свой браузер на веб-консоль по адресу http: // localhost: 8443 / и входите в систему с помощью admin / admin и выбираете проект javaee, вы можете увидеть, что запущен сервис mysql и задание сборки:

OpenShift-консоль

Через пару минут этот завершается, и вы видите работающий фронтенд-сервис. Давайте кратко рассмотрим журналы сборки:

1
2
oc get builds #Shows the one successful build
oc build-logs  jee-sample-build-1  #Shows the log output for the build

Все выглядит хорошо. Вы можете видеть, что зависимости maven загружаются и просматривают различные потоки изображений с помощью:

1
oc get is

Вы можете видеть, что есть два:

1
2
3
NAME         DOCKER REPO                                TAGS      UPDATED
jee-sample   172.30.236.154:5000/javaeehol/jee-sample
wildfly      openshift/wildfly-90-centos7               latest    57 seconds ago

OpenShift фактически создает новый образ докера с javaee-hol в нем и развертывает результат как новый модуль. Время увидеть все в действии. Укажите в браузере http: //jee-sample.openshiftdev.local: 1080 / movieplex7-1.0-SNAPSHOT / и посмотрите приложение Movieplex в действии.

movieplex

Вас интересует странный порт? 1080 на самом деле является особенностью универсальной виртуальной машины OpenShift. Потому что мы предполагаем, что у вас уже есть служба, работающая на порту 80, и из-за этого отображение NAT в VirtualBox назначает порт 1080 на порт 80 на главном сервере OpenShift. К сожалению, это делает некоторые вещи в инструментах OpenShift Eclipse немного неудобными. Но это локальная установка и у нее есть один недостаток. Давайте рассмотрим функции инструментов немного больше

OpenShift Explorer View — встроенная веб-консоль.

OpenShift Explorer View позволяет подключаться к экземплярам OpenShift 3, создавать новые приложения, управлять доменами или проектами, выполнять такие действия, как переадресация портов и файлы хвостов (потоковая передача журналов). Доступны определенные действия, в зависимости от версии экземпляра OpenShift, к которой вы подключены. Для соединений OpenShift 2 вы можете настроить картриджи, для OpenShift 3 вы можете получить доступ к блокам, маршрутам, сервисам и развернуть образы Docker. Просто разверните дерево и щелкните правой кнопкой мыши на интересующем вас ресурсе. Например, как показано на следующем снимке экрана, чтобы получить доступ к журналам внешнего интерфейса.

jdbs-стручка-журналы

Вы можете найти еще более подробную информацию о Docker Tooling и других функциях в подробном описании функций .

Учитесь даже больше

Узнайте больше об OpenShift Origin и о том, как начать работу с All-In-One-VM . Возьмите Java EE 7 Hands-On-Lab и следуйте отдельным шагам, чтобы освежить в Java EE 7. Следите за @OpenShift в Twitter и будьте в курсе последних новостей. Не стесняйтесь связаться со мной в комментариях или через Twitter @myfear .