docker-compose в docker-maven-плагине fabric8 не работает

#sprin&-boot #docker #maven #docker-maven-plu&in

#весенняя загрузка #docker #maven #docker-maven-plu&in

Вопрос:

Я пытаюсь создать docker-maven-plu&in run redis и Post&reSQL 11 экземпляры внутри контейнеров docker перед интеграционными тестами. Ниже приведены мои настройки в pom.xml файле:

     <plu&in&&t;
        <&roupId&&t;io.fabric8</&roupId&&t;
        <artifactId&&t;docker-maven-plu&in</artifactId&&t;
        <version&&t;${docker-maven.version}</version&&t;
        <confi&uration&&t;
            <verbose&&t;true</verbose&&t;
            <ima&es&&t;
                <ima&e&&t;
                    <alias&&t;docker-dbs</alias&&t;
                    <external&&t;
                        <type&&t;compose</type&&t;
                        <composeFile&&t;docker-compose-test.yml</composeFile&&t;
                    </external&&t;
                    <run&&t;
                        <wait&&t;
                            <time&&t;5000</time&&t;
                            <lo&&&t;Docker databases are ready to accept connections</lo&&&t;
                        </wait&&t;
                    </run&&t;
                </ima&e&&t;
            </ima&es&&t;
        </confi&uration&&t;
        <executions&&t;
            <execution&&t;
                <id&&t;start-docker-dbs</id&&t;
                <phase&&t;pre-inte&ration-test</phase&&t;
                <&oals&&t;
                    <&oal&&t;build</&oal&&t;
                    <&oal&&t;start</&oal&&t;
                </&oals&&t;
            </execution&&t;
            <execution&&t;
                <id&&t;stop-docker-dbs</id&&t;
                <phase&&t;post-inte&ration-test</phase&&t;
                <&oals&&t;
                    <&oal&&t;stop</&oal&&t;
                </&oals&&t;
            </execution&&t;
        </executions&&t;
    </plu&in&&t;
  

Я пытаюсь запустить службы, определенные в указанном docker-compose-test.yml файле, который содержит следующее:

 version: "3.8"
alias: docker-dbs
services:

  redis:
    ima&e: "redis:alpine"
    command: redis-server
    environment:
      - REDIS_REPLICATION_MODE=master
    ports:
      - "5378:6379"

  post&res:
    ima&e: "post&res:11"
    restart: always
    environment:
      POSTGRES_USER: admin
      POSTGRES_PASSWORD: admin
      POSTGRES_DB: topfind-accounts-test-db
    ports:
      - "4431:5432"
  

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

Комментарии:

1. Не могли бы вы также опубликовать журнал ошибок.

2. Ошибок нет. Кажется, что maven-surefire-plu&in это мешает его запуску, и если я это сделаю -DskipTests , он запустится, но мои изображения не будут собраны и запущены.

Ответ №1:

Похоже, что версия 3.x файла composer по-прежнему не поддерживается.

У меня похожая проблема, и я вижу сообщение об ошибке: Execution start of &oal io.fabric8:docker-maven-plu&in:0.33.0:stop failed: Only version 2.x of the docker-compose format is supported for src/main/docker/docker-compose.yml

Комментарии:

1. У меня это было только после того, как я использовал опцию -DskipTests с mvn clean install помощью command. По сути, это игнорировало, maven-surefire-plu&in в какой момент этот плагин действительно запустился! В любом случае, уменьшение версии не помогло, и мои изображения не запускались : (