На новой неделе. В последнее время для меня было много путешествий, и это не скоро остановится. Но у меня есть некоторое время, чтобы попробовать OpenShift Origin и запустить его в моей среде Windows. Есть блог-пост начального уровня, как все настроить пару дней назад. Теперь пришло время просто запустить на нем ванильное изображение Docker.
Предпосылки
Получите вашу установку Origin и работает . И не забудьте также установить двоичные файлы OpenShift локально. Команда OpenShift выпустила «все в одном» на отдельном, удобном для разработчиков и хорошо выглядящем сайте через пару дней после моего сообщения. Итак, все, что вам нужно запомнить, это этот адрес: http://www.openshift.org/vm/
Получите вашу среду OpenShift Up
Это единственная бродячая команда. Если это удалось, вы сможете получить доступ к локальной консоли администратора через браузер по адресу http: // localhost: 8443 /, а также войти в систему с помощью инструментов клиента из командной строки:
1
|
oc login http: //localhost:8443 |
Используйте admin / admin в качестве имени пользователя / пароля.
Создать проект и запустить WildFly
Первое, что нужно сделать, это создать новый проект OpenShift. Мы хотим отделить это немного от значения по умолчанию. В конце представьте себе пространство имен, в котором мы можем немного поиграть:
1
|
oc new -project wildfly-tests --description= "WildFly and Docker on OpenShift v3" --display-name= "WildFly Test Project" |
OpenShift не предоставляет прямого доступа к демону Docker. Итак, вам нужно использовать инструмент командной строки oc для запуска образа. Некоторые (неподдерживаемые) изображения сообщества JBoss доступны и перечислены на http://www.jboss.org/docker/ . Я заинтересован в запуске последней WildFly 9 для этого теста.
1
|
oc new -app --docker-image=jboss/wildfly |
Если вы посмотрите веб-консоль, то увидите, что развертывание запущено, и образ Docker загружен.
В зависимости от вашего соединения, это может занять некоторое время. Но когда он закончится, вы увидите зеленую полосу с надписью «Работает», а также показывает IP-адрес. Посмотрим, все ли прошло хорошо, а экземпляр WildFly запущен и работает. Нам нужно увидеть журналы для нашего модуля. Давайте перечислим их:
1
2
3
|
oc get pods NAME READY STATUS RESTARTS AGE wildfly- 1 -jzvsj 1 / 1 Running 0 11m |
и посмотреть логи:
1
|
oc logs wildfly- 1 -jzvsj |
Обратите внимание, что имя модуля в вашей среде, скорее всего, будет другим. Команда должна выводить журналы WildFly так, как вы к ним привыкли. На данный момент у нас работает стручок. Теперь нам нужно открыть порт этого модуля через службу для внешнего мира. Но прежде всего нам нужно решить, через какое доменное имя мы хотим его выставить. Добавьте / измените файл hosts с помощью следующей записи:
1
|
127.0 . 0.1 wildfly.openshiftdev.local |
И выполните следующую команду, чтобы добавить внешний маршрут к сервису:
1
|
oc expose service wildfly --hostname=wildfly.openshiftdev.local |
Перейдите на вкладку сервисов в консоли и увидите, что маршрут создан для сервиса.
Теперь осталось только изменить правила переадресации портов в консоли VirtualBox. Добавьте порт 80 от хоста к гостю.
Теперь вы можете получить доступ к экземпляру WildFly через http: //wildfly.openshiftdev.local/ . Поздравляем!
Поиск неисправностей
Если вы используете что-то еще, кроме all-in-vm, например, vagrant-изображение fabric8 , вам потребуется изменить параметры безопасности в OpenShift . Ssh в экземпляр, войдите через командную строку oc и отредактируйте настройки безопасности:
1
|
oc edit scc restricted |
Измените стратегию runAsUser.Type на RunAsAny. Это позволяет изображениям работать в качестве корневого UID, если в Dockerfile не указан пользователь USER.
Ссылка: | Совет: запуск образа WildFly Docker в OpenShift Origin от нашего партнера по JCG Маркуса Эйзела (Markus Eisele) из блога « Разработка программного обеспечения для предприятий с использованием Java» . |