Многократное использование docker-maven-plugin (fabric8)

Я хочу использовать docker-maven-plugin из io.fabric8 для нескольких целей:

  1. Запуск сервера БД с докером для интеграционных тестов (отказоустойчивый).
  2. Создание Dockerfile моего продукта

Оба работают по отдельности.

1:

<plugin>
  <groupId>io.fabric8</groupId>
  <artifactId>docker-maven-plugin</artifactId>
  <version>0.24.0</version>
  <executions>
    <execution>
     <id>start</id>
     <phase>pre-integration-test</phase>
     <goals>
       <goal>build</goal>
       <goal>start</goal>
     </goals>
   </execution>
   <execution>
     <id>stop</id>
     <phase>post-integration-test</phase>
     <goals>
       <goal>stop</goal>
     </goals>
   </execution>
 </executions>
 <configuration>
   <dockerHost>#HOST#</dockerHost>
     <images>
       <image>
         <name>sath89/oracle-xe-11g:latest</name>
         <run>
          <ports>
            <port>1521:1521</port>
          </ports>
          <wait>
            <log>Database ready to use. Enjoy!</log>
            <time>900000</time>
          </wait>
        </run>
      </image>
    </images>
  </configuration>
</plugin>

2:

<plugin>
  <groupId>io.fabric8</groupId>
  <artifactId>docker-maven-plugin</artifactId>
  <version>0.24.0</version>
  <configuration>
    <verbose>true</verbose>
    <dockerHost>#HOST#</dockerHost>
    <registry>#REGISTERY#</registry>
    <images>
      <image>
        <name>#NAME#</name>
        <build>
          <dockerFileDir>${project.basedir}</dockerFileDir>
        </build>
      </image>
    </images>
  </configuration>
  <executions>
    <execution>
      <id>build-image-and-push</id>
      <phase>install</phase>
      <goals>
        <goal>build</goal>
        <goal>push</goal>
      </goals>
    </execution>
  </executions>
</plugin>

Когда я объединяю эти две конфигурации, все идет вразрез. Есть ли способ использовать изображение только для интеграционных тестов? Как я могу определить, что образ моего проекта не должен быть встроен в образ базы данных?

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
320
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Перенос конфигурации образа на <execution> помог!

Другие вопросы по теме