Статьи

Запуск Eclipse MicroProfile в Microsoft Azure

В этой статье я продолжаю серию статей о запуске приложений Eclipse MicroProfile в Oracle Cloud , демонстрируя, как это сделать в веб-приложениях Microsoft Azure для контейнеров .

Я использую то же простое приложение под названием CloudEE Duke, что и в предыдущих постах. Разница лишь в том, что я теперь упаковываю приложения как Docker Images. В этом примере я покажу, как использовать плагин fabric8 Maven для создания образа докера для WildFly Swarm .

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
<plugin>
    <groupId>io.fabric8</groupId>
    <artifactId>docker-maven-plugin</artifactId>
    <version>${version.docker-maven-plugin}</version>
    <configuration>
        <images>
            <image>
                <alias>${project.artifactid}</alias>
                <name>ivargrimstad/${project.artifactId}:swarm</name>
                <build>
                    <maintainer>Ivar Grimstad ([email protected])</maintainer>
                    <from>jboss/base-jdk:8</from>
                    <assembly>
                        <basedir>/</basedir>
                        <inline>
                            <files>
                                <file>
                                    <source>${project.build.directory}/${project.build.finalName}-hollow-swarm.jar</source>
                                    <outputDirectory>/opt</outputDirectory>
                                </file>
                                <file>
                                    <source>${project.build.directory}/${project.build.finalName}.war</source>
                                    <outputDirectory>/opt</outputDirectory>
                                </file>
                            </files>
                        </inline>                                  
                    </assembly>      
                    <entryPoint>
                        <arg>java</arg>
                        <arg>-Djava.net.preferIPv4Stack=true</arg>
                        <arg>-jar</arg>
                        <arg>/opt/${project.build.finalName}-hollow-swarm.jar</arg
                        <arg>/opt/${project.build.finalName}.war</arg
                    </entryPoint>
                </build>
            </image>
        </images>
    </configuration>
    <executions>
        <execution>
            <phase>package</phase>
            <goals>
                <goal>build</goal>
            </goals>
        </execution>
    </executions>
</plugin>

Конфигурация аналогична для других реализаций Eclipse MicroProfile. Смотрите полный pom.xml для примеров. Чтобы создать образ докера для реализации CloudEE Duke в WildFly Swarm, используйте следующую команду:

1
mvn clean package docker:build -Pswarm

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

Чтобы развернуть приложение CloudEE Duke в Microsoft Azure, войдите на портал Azure и создайте новое веб-приложение для контейнеров, как показано ниже.

Поскольку WildFly Swarm по умолчанию работает на порте 8080 (и я здесь использую все значения по умолчанию), необходимо настроить номер порта для приложения. Это можно сделать либо в пользовательском интерфейсе, либо с помощью Cloud Shell, как показано здесь:

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

https://cloudee-duke-swarm.azurewebsites.net/hello
Герцог говорит привет!

https://cloudee-duke-swarm.azurewebsites.net/health

1
2
3
4
{
outcome: “UP”,
checks: [ ]
}

https://cloudee-duke-swarm.azurewebsites.net/metrics

1
2
3
# HELP base:classloader_total_loaded_class_count Displays the total number of classes that have been loaded since the Java virtual machine has started execution.
# TYPE base:classloader_total_loaded_class_count counter
base:classloader_total_loaded_class_count 13697.0
Опубликовано на Java Code Geeks с разрешения Ивара Гримстада, партнера нашей программы JCG . См. Оригинальную статью здесь: Запуск Eclipse MicroProfile в Microsoft Azure.

Мнения, высказанные участниками Java Code Geeks, являются их собственными.